簡體   English   中英

如何使ui路由器始終以給定狀態啟動

[英]How to make ui-router always start in a given state

我有兩種狀態, preloadergame 我想始終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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM