У меня следующий вопрос:нагрузки AngularJS UI маршрутизатора же контроллер несколько раз
Это часть моего $ stateProvider:
angular.module('sampleApp').config(function ($stateProvider) {
$stateProvider
.state('property', {
url: '/property',
templateUrl: 'app/property/property.html',
controller: 'PropertyCtrl',
authenticate: true,
role: 'user'
})
.state('property.selected', {
url : '/:propertyId',
templateUrl : 'app/property/edit/edit-controller.html',
controller : 'PropertyEditCtrl'
})
.state('property.selected.settings', {
url : '/settings',
templateUrl : 'app/property/partials/settings.html'
})
.state('property.selected.settings.general', {
url : '/general',
templateUrl : 'app/property/partials/settings-general/settings-general.html',
controller : 'SettingsGeneralCtrl'
})
.state('property.selected.settings.property', {
url : '/property',
templateUrl : 'app/property/partials/settings-property/settings-property.html',
controller : 'SettingsPropertyCtrl'
})
.state('property.selected.settings.extras', {
url : '/extras',
templateUrl : 'app/property/partials/settings-extras/settings-extras.html',
controller : 'SettingsExtrasCtrl'
})
Что происходит, что контроллер загружается любым государством за пределами " свойство.selected 'load несколько раз. В случае с 'property.selected.settings.general' SettingsGeneralCtrl загружается 28 раз. Если я слушаю событие в этом контроллере и console.log, то что-то регистрируется 28 раз.
Любая идея, почему? Я полностью потерян.
У вас есть ссылка на контроллер, который вы просматриваете с помощью ng-контроллера? –
@ jack.the.ripper У меня нет никаких ссылок за пределами этого состояния. – user3171876