Я создаю приложение AngularJS, и у меня есть некоторый контроллер для моего представления со значением на нем, которое называется $scope.restoreModalVisible
, которое я установил на false
при инициализации. Это значение будет использоваться в моем DOM как
<div ng-if="restoreModalVisible" ng-controller="RestoreController">
<!-- all my pop-up modal content -->
</div>
Проблема в том у меня есть куча директив на странице и один из них должен иметь доступ к этому логическому значению, поскольку он использует кнопку для переключения стоимость. Однако значение не меняется правильно.
У меня создалось впечатление, что Angular «знает», чтобы искать родительские области, если значение не может быть найдено в непосредственной области, поэтому почему свойство не изменяется на уровне ребенка?
В контроллере моей директивы, я могу видеть значение я сделать что-то вроде $scope.$parent.$parent.$parent.restoreModalVisible
My Controller директивы:
controller: function($scope, RestoreManager){
$scope.restoreAccount = function(e, id){
e.preventDefault();
// Here we need to set the RestoreManager
RestoreManager.set(id);
$scope.restoreModalVisible = true;
}
}
Да, я использую изолированный объем, но по какой-либо причине Я все еще думал, что это доступно в этот момент –