[英]Angular Routing Changing the Root of the original request URL base
我有一個使用路由的 angular 應用程序。
它的默認頁面 (index.html) 位於 /somefolder/index.html
我需要應用程序的 rest 來運行/someotherfolder/...所有腳本和資源
我可以讓它與 deploy-url 一起工作,修改 base ref 等。
所以導航到
http://someip/somefolder/
有效,但 angular 將 url 更改為
http://someip/someotherfolder/#/route 其中 route 是我的路線之一。
有沒有辦法保留原來的基地? IE
http://someip/somefolder/#/route
我嘗試過的一切都沒有成功。 另外是的,由於超出此問題的 scope 的限制,他們必須住在服務器的不同區域。 非常感謝任何想法或建議。
添加更多細節。 當導航到 https://IP/xyz/fva/index.html 時,我最終來到這里(除了 index.html 以外的所有內容。https://IP/html/FvaConfig/#../../xya/fva/階段
還有一個子路由,所以你可以有 https://IP/html/FvaConfig/#../../xya/fva/stage/(child:status) 這有效,直到你嘗試刷新(這是使用hash ) 然后它嘗試使用 https://IP/html/FavfConfig/ 這不是 index.html 的位置現在如果我不使用 hash
https://IP/xyz/fva/stage 是否讓我到達我想要的位置 Refresh 也能正常工作。 但是....當我點擊子路由 https://IP/xya/fva/stage/(child:status) 時,我到達了我想要的位置,但刷新不起作用。 我有 enableTracing 無法匹配任何路線。 'xya/fva/stage' 但我確實有那條路線 { path: 'xyz/fva/stage', pathMatch: 'full', redirectTo: 'stage', }, 我不知所措
如本回答中所述,您可以在應用程序模塊中提供APP_BASE_HREF
以更改路由器使用的基礎 URL。
在你的情況下, URL 不是動態的,所以如果你有一個環境文件,你可以在那里設置基礎 URL 並像這樣提供它:
// Inside @NgModule in AppModule...
providers: [
// Other providers...
{
provide: APP_BASE_HREF,
useValue: environment.appBaseUrl
},
]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.