術語
#foo
:slashless方案#/foo
:slashy方案
背景
有其使用的應用程序的某些遺留部分(和依賴)的slashless方案。我想以非破壞性的方式介紹Angular路由(可能帶有ui-router),這樣就不會干擾傳統路由,因此部分應用可能會逐漸淘汰。一旦發生這種情況,所有角度的應用程序都可以一次切換到slashy方案。如何使Angular路由器(或ui路由器)接受類似`#foo`的路由而不是重定向到「#/ foo」?
到目前爲止
我試着設置$locationProvider.hashPrefix('')
爲空字符串,但似乎你只能設置#
和/
之間的字符串,這樣就沒有工作。
選項
看來我可以
- 應用程序的重寫遺留部分,或者
- 重寫角的$ locationProvider.hashPrefix包括默認
'/'
。因此將其設置爲''
會變得有意義。
這兩個選項看起來都非常耗時。
你知道更好的方法讓Angular認識到無斜線方案嗎?
如果我正確地得到您的問題,您應該使用HTML路由模式。這是一個類似的參考:http://stackoverflow.com/questions/16677528/location-switching-between-html5-and-hashbang-mode-link-rewriting – Tomer