關(guān)于Angular2頁(yè)面刷新后報(bào)404錯(cuò)誤

最近Angluar2挺火的,本人也趁熱打鐵的學(xué)習(xí)進(jìn)行中,然而當(dāng)做到將項(xiàng)目部署到IIS 6.0上時(shí),localhost:1233/login是Angular2項(xiàng)目的登陸地址,第一遍跳轉(zhuǎn)login頁(yè)面,顯示正常。但如果刷新login頁(yè)面,這會(huì)報(bào)一個(gè)404錯(cuò)誤。為什么呢,思前想后,代碼本地測(cè)試沒毛病啊,為啥發(fā)布上去就不行了呢?之后就是不停的百度、跳墻了。。。后來在看到網(wǎng)上一些教程后,發(fā)現(xiàn)遇到這坑的人也挺多的,在解決的博客中也找到的具體的解決辦法,現(xiàn)在就分享一下,以幫助那些未跳出這坑的朋友。其實(shí)辦法很簡(jiǎn)單,只需配置一下app.module.ts即可完美解決問題,代碼入下:

import {PathLocationStrategy, LocationStrategy} from '@angular/common';

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

其實(shí)核心代碼就這句:

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

這樣設(shè)置的作用是當(dāng)你訪問Angluar站點(diǎn)時(shí),會(huì)自動(dòng)在根節(jié)點(diǎn)后面加一個(gè)#錨點(diǎn)。再次刷新便不會(huì)報(bào)404錯(cuò)誤了。是不是很簡(jiǎn)單呢....

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容