У меня есть абстрактный родительский вид, предназначенный для совместного использования контроллера со своими вложенными представлениями.
.state('edit', {
abstract: true,
url: '/home/edit/:id',
templateUrl: 'app/templates/editView.html',
controller: 'editController'
})
.state('edit.details', {
url: '/details',
templateUrl: 'app/templates/editDetailsView.html'
})
.state('edit.info', {
url: '/info',
templateUrl: 'app/templates/editInfoView.html'
})
Маршрутизация работает как ожидалось.
Проблема заключается в том, что когда я обновляю переменную $scope
из одного из вложенных представлений, это изменение не отражается в представлении. Когда я делаю то же самое с родительского представления, он отлично работает. Это не ситуация, для которой требуется $apply
.
Я предполагаю, что для каждого представления создается новый экземпляр editController
, но я не уверен, почему и как его исправить.