angular 用の angular-ui-router プラグインを使用してルーティングを設定しようとしています。ページで他の処理が行われる前に (どのルートでも)、ユーザーのデータをロードする必要があります。次に、ユーザーのデータ (ID、ユーザー名など) に基づいて、ルートに必要な他のデータ コンポーネントをロードできます。
このシナリオのパターンはありますか? これを解決する 1 つの方法は、すべてのルートでユーザー データを解決として追加することだと考えていました。ただし、これは非常に冗長で非効率的に見えるだけでなく、機能しません (以下のコードを参照)。
collectionlist
これは、解決が解決の完了を待たないために機能しないコード サンプルですuserpanel
(これが予想される動作であることは理解しています)。
.state('default', {
url: '/',
views: {
'userpanel' : {
templateUrl: 'js/partials/user_panel.html',
controller: 'userController',
resolve: {
user: function(UserResourceLoader) {
return UserResourceLoader();
}
}
},
'collectionlist' : {
templateUrl: 'js/partials/collection_list.html',
controller: 'collectionsController',
resolve: {
collectionsByUser: function(CollectionsByUserLoader, User) {
return CollectionsByUserLoader(User.data.id);
}
}
}
}
})
これに関する提案は非常に役立ちます。