有偿分享个人源码,包括: 爬虫程序 , 刷评论程序 , 个人免签支付系统等源码。 Q:497596754; 个人收款免签支付系统源码咨询

解决angular2页面刷新后报404错误

 

  如果你的angular项目部署到一个tomcat容器里面,localhost:8080是JavaWeb的主页,localhost:8080/driver/login是你angular2项目的登陆地址。第一遍跳转login页面,显示正常。但如果你刷新login页面,这会报一个404错误。为什么呢,因为你刷新后其实它走的是JavaWeb的路由了,在Java的路由下找不到这个路由地址,所以报错。这算是angular2的一个坑吧,网上搜了一下,发现这个遇到这个错误的人挺多的,但都没有给出解决办法,现把解决办法贴出来,希望能帮到一些遇到这个问题的程序猿们把!

解决办法:

解决angular2页面刷新后报404错误办法:
配置app.module.ts
import {PathLocationStrategy, LocationStrategy} from '@angular/common';

@NgModule({
  declarations: [AppCmp], 
  bootstrap: [AppCmp],
  imports: [BrowserModule, routes],
  providers: [{provide: LocationStrategy, useClass: HashLocationStrategy]
]);

主要添加的代码:

providers: [{provide: LocationStrategy, useClass: HashLocationStrategy]

这样设置后,访问angular站点,会自动在根节点后面加一个#锚点。再次刷新便不会报404错误了。

posted @ 2016-12-08 10:57  十年老程序猿  阅读(5680)  评论(3编辑  收藏  举报