[英]Handling routes without hashbang using angular-ui-router
我在網上搜索了很多答案,但還沒有找到任何答案。
現在我在我的文件中有這個代碼,我認為除了我指定的那些之外我還會處理所有路由/狀態:
$urlRouterProvider.otherwise('/');
但是,此功能僅適用於localhost:1337/#/stuff
類的路徑,但如果我輸入localhost:1337/stuff
,我會收到一個丑陋的內部服務器錯誤。
理想情況下,我喜歡localhost:1337/stuff
或沒有hashbang的任何其他URL重定向到localhost:1337/#/
(我的應用程序的主頁)。
有關如何實現這一目標的任何想法?
你需要設置兩件事:
$locationProvider.html5Mode(true);
來自AngularJS 關於路由的文檔 :
使用此模式需要在服務器端重寫URL,基本上您必須重寫所有鏈接到應用程序的入口點(例如index.html)。
您可以在app.js中啟用html5模式,這也將從您項目中的鏈接中刪除hashbang( localhost:1337/stuff
而不是localhost:1337/#/stuff
)。
如果這不是您想要的行為,那么您將不得不在服務器端進行重寫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.