的角度UI-路由器文檔使用下面的示例重定向:角UI-路由器重定向路由
$urlRouterProvider.when(state.url, ['$match', '$stateParams', function ($match, $stateParams) {
if ($state.$current.navigable != state || !equalForKeys($match, $stateParams)) {
$state.transitionTo(state, $match, false);
}
}]);
https://github.com/angular-ui/ui-router/wiki/URL-Routing#when-for-redirection
我的問題是關於state.url
。您可以使用$state
服務獲取州的網址,例如$state.get('home')
但是這是一個服務,並沒有在配置階段可用,所以我將如何去獲取一個狀態的URL,把它作爲$urlRouterProvider.when
的第一個參數?
太好了,謝謝你的提供。所以,爲了處理重定向,你會推薦使用創建一個自定義的正則表達式匹配器(並將其與狀態url相對應)? – TaylorMac 2014-08-28 16:47:55
是的。創建你自己的自定義正則表達式匹配器應該可以解決這個問題 – 2014-08-28 16:49:29
沒問題,這看起來有點多餘,但如果沒有其他解決方案,那麼這將起作用。 – TaylorMac 2014-08-28 17:12:16