これは、angularjs 開発者が遭遇する一般的な問題である可能性があります。これが過去に既に回答されているかどうかはわかりません。簡単な検索では結果が得られません。
さて、私は2つの関連するルートを持っています。
$stateProvider
.state('user', {
abstract: true,
templateUrl: 'views/sometemplate.html',
controller: 'UserCtrl'
})
.state('user.collection', {
url: '/user',
resolve: {
users: function(User) {
return User.query()
}
},
})
.state('user.detail', {
url: '/user/:id',
resolve: {
user: function($stateParams, User) {
return User.get({id: $stateParams.id})
}
},
});
これに関する問題は、ルートにアクセスする場合/user
、コントローラーにはユーザーとユーザーの 2 つのプロバイダーが必要になることです。
.controller('UserCtrl', function ($scope, user, users) {
$scope.user = user;
$scope.users = users;
})
このために 2 つの別個のコントローラーを使用することをお勧めしますか? はいの場合、通常はコントローラーにどのように名前を付けますか? しかし、2 つの異なるコントローラーを使用するのは良くないと思います。