Один контроллер для обработки разрешается в двух маршрутах, сбор и один в angularjs

Это может быть распространенной проблемой, с которой сталкивается разработчик 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 разных контроллера, так как они не совсем разные, все же один домен.

0 ответов

Другие вопросы по тегам