[英]How to make angular ui-router's parent state always execute controller code when state changes?
[英]How to make ui-router always start in a given state
我有兩種狀態, preloader
和game
。 我想始終從preloader
狀態開始,一旦加載了資產,該狀態便會傳遞給game
。
但是,我的問題是,如果將preloader URL定義為/preloader
,將游戲URL定義為/game
,那么當用戶在/game
上重新加載頁面時,它們將被路由到我的game
狀態,並且不會看到我的預加載器。
如何配置角度ui路由器以實現所需的行為?
您可以使用$location
設置ui-router在應用加載之前讀取的URL:
.run(function($location) {
$location.path('/preloader');
})
您可以使用攔截器觀察每個狀態的變化。
$rootScope.$on('$stateChangeStart', function (event,next, nextParams, fromState) {
event.preventDefault();
$state.go('preloader', {}, {reload: true});
});
這樣可以防止出現默認行為,並在重定向之前進行所需的任何檢查。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.