簡體   English   中英

Angular 2 URL 欄的使用會導致不需要的應用程序重新加載

[英]Angular 2 URL bar use causes unwanted application reload

我的程序是對Angular 2“路由”高級教程的修改。 我可以通過我的表單控件導航到正確的位置。 但是使用 URL 欄給我帶來了問題。

假設我之前導航到某個功能,因此登錄和延遲加載都發生了。 如果我在 URL 中輸入它的地址,我就會看到我的登錄頁面。 跟蹤我的代碼我又從頭開始,以前的延遲加載模塊現在對系統來說是未知的。

或者使用Plunker 頁面中的股票應用程序。 導航到 Crisis Center #2 編輯頁面后,我在 url 欄中輸入:

http://localhost:8000/crisis-center/1

我收到此控制台錯誤:

zone.js@0.6.25?main=browser:1274 GET http://localhost:8000/crisis-center/crisis-center/app/main.ts

我的目標是訪問危機中心/1 應該在記錄編輯器頁面中向我顯示該記錄,這是通過 Angular 2 控件的通常行為。 相反,應用程序開始重新加載。 它找不到 localhost:8000/app/main.ts,而是加載 localhost:8000/crisis-center/crisis-center/app/main.ts。

我懷疑我應該對瀏覽器本地存儲做些什么,但是什么?

謝謝,傑羅姆。

Angular 使用 pushState API,只有在使用此 API 時,才能更改 URL,而不會導致頁面重新加載。

如果您手動更改 URL,瀏覽器會重新加載 URL。 您或 Angular 對此無能為力。

另見https://developer.mozilla.org/en-US/docs/Web/API/History_API

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM