0
以下は私のui-routerの設定です。 「家」は親状態であり、「バッチ」は他の多くの中の1つの子状態である。
//config
.state('home',{
url:'/home',
templateUrl:'../views/sidenav/home.htm',
controller: 'homeController',
controllerAs: 'home'
})
.state('batches',{
parent:'home',
url:'/batches',
templateUrl:'../views/sidenav/batches.htm',
controller: 'batchesController',
controllerAs: 'batches'
})
問題は、「ホーム」はサイド・ナビゲーション・バーを除いて空のビューを持っています。だから、私はそれが 'home'状態にしようとするたびにユーザを 'バッチ'状態にリダイレクトしたい。 私はそれを達成するために次のことを試みているが、うまくいかない。
$rootScope.$on('$stateChangeStart', function(event, toState, toParams, fromState, fromParams){
if(toState.name=='home'){ //home is a parent state
$location.path('/home/batches'); //batches is a child state of home
}
});
私は混乱しているためdependecy注入をチェック。バッチを家に併せて表示したり、家に見せないようにしたいですか? –
'if'チェックは合格ですか? '$ location'を注入しましたか? – Marko
'home'を' abstract'にします。ルータのドキュメントを参照してください。問題のプランナーデモを作成する – charlietfl