Mam zdarzenie kliknięcia, które ma miejsce poza zakresem mojej niestandardowej dyrektywy, więc zamiast używać atrybutu „ng-click”, używam odbiornika jQuery.click () i wywołuję funkcję w moim zakresie w następujący sposób:
$('html').click(function(e) {
scope.close();
);
close () to prosta funkcja, która wygląda następująco:
scope.close = function() {
scope.isOpen = false;
}
Moim zdaniem mam element z „ng-show” powiązany z isOpen w następujący sposób:
<div ng-show="isOpen">My Div</div>
Podczas debugowania stwierdzam, że wywoływana jest metoda close (), isOpen jest aktualizowana do wartości false, ale widok AngularJS nie jest aktualizowany. Czy istnieje sposób, w jaki mogę ręcznie powiedzieć Angularowi, aby zaktualizował widok? Czy może jest bardziej „kątowe” podejście do rozwiązania tego problemu, którego nie widzę?