加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Angular2+ 编译后部署到服务器上页面刷新404问题

发布时间:2020-12-17 07:05:39 所属栏目:安全 来源:网络整理
导读:原因:NG2+ 会默认不显示URL后面的文件名 解决方案:使用LocationStrategy方式,然后把URL后的# 替换成index.html# app.module.ts 1 import {HashLocationStrategy,LocationStrategy} from ‘@angular/common‘ ; 2 3 @NgModule({ 4 imports: [ ], 5 declara

原因:NG2+ 会默认不显示URL后面的文件名

解决方案:使用LocationStrategy方式,然后把URL后的# 替换成index.html#

app.module.ts

 1 import {HashLocationStrategy,LocationStrategy} from ‘@angular/common‘;  2 
 3 @NgModule({
 4   imports: [  ], 5   declarations: [
 6     AppComponent, 7   ], 8   providers: [{provide: LocationStrategy,useClass: HashLocationStrategy}], 9   bootstrap: [AppComponent]
10 })
11 export class AppModule { }

app.component.ts

1   changeURL() {
2     var text = window.location.href;
3     text.toString();
4     var url = text.replace(//#/,"/index.html#");
5     window.history.pushState({},"0",url);
6   }
7   ngAfterContentChecked(){// 每次做完组件视图和子视图的变更检测之后调用,为了防止循环替换,replace使用全替换模式
8     this.changeURL();
9   }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读