我目前正試圖通過實現_escaped_fragment_-scheme(Google Docs)來製作角度應用程序索引。我意識到它已被棄用的事實,但據我所知,在一些研究和實驗後,它仍然是最安全的選擇。用於角度路由的右側哈希前綴
該方案要求hashbang #!
作爲分隔符爲 '真正的URI' 和URI的角路由部分,即
http://www.someuri.com/#!/dashboard
目前我使用默認的#:
http://www.someuri.com/#/dashboard
我知道如何更改路由以使用'#!':
angular.module('myApp').config([
'$locationProvider',
function($locationProvider) {
$locationProvider.hashPrefix('!');
}
]);
但是,這顯然打破了「舊」鏈接(如http://www.someuri.com/#/dashboard)。
如何正確路由兩種URI格式?
我曾嘗試配置路由是這樣的:
app.config(function($urlRouterProvider) {
$urlRouterProvider
.when('!/imprint', '/imprint')
.when('!/blog', '/blog')
.when('!/blog/{blogPostId}', '/blog/{blogPostId}');
});
,但它不能正常工作,無論是我可以定義一個感嘆號作爲路由的URI的第一個字符的狀態。