角型アプリの状態に基づいてタイトルを設定したいと思います。それはうまく動作しますが、子の状態にタイトルが定義されていない場合は、親のtitleプロパティにフォールバックしたいと思います。子から親ステートにアクセスするUI-router
これは私がこれまで持っているものです:私のアプリの実行ブロックで
:コード検査中に
...
$rootScope.$on('$stateChangeSuccess', function (event, current, previous) {
if (current.hasOwnProperty('title')) {
$rootScope.title = current.title;
}
});
...
私のモジュールのルートで
.state('main.parent', {
url: '/parent',
controller: 'ParentController',
controllerAs: 'vm',
templateUrl: 'app/parent.html',
title: 'Parent',
})
.state('main.parent.child', {
url: '/child',
controller: 'ChildController',
controllerAs: 'vm',
templateUrl: 'app/child.html'
})
、私は$stateChangeSuccess
が予想通り2回トリガーされていることが判明しました。最初は親に対して、次にth子供。子が呼び出されたときに私はcurrent.parent
にアクセスしようとしましたが、そのようなプロパティはありません。それにアクセスする方法はありますか?
UPDATE
私はこれらの質問を見た: get parent state from ui-router $stateChangeStart、 get parent state from ui-router $stateChangeStart をしかし、それらのどれも後者の状態分割ハックを除いて(この問題に対する明確な答えを持っていたが、私はむしろそれを避けたいです)。
$状態でチェック$ current.parent! –