Mam zdarzenia click, co dzieje się poza zakresem mojego dyrektywy niestandardowej, więc zamiast używać „NG-kliknij” atrybut, używam jQuery.click (słuchacza) i wywołanie funkcji w moim zakresie tak:Jak mogę powiedzieć angularjs do „odświeżenia”
$('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" bound to isOpen w ten sposób:
<div ng-show="isOpen">My Div</div>
Gdy debugowanie, jestem stwierdzenia, że Close() jest wywoływana, ISOpen jest aktualizowany na false, ale widok angularjs nie aktualizuje. Czy jest sposób, który mogę ręcznie powiedzieć Angular, aby zaktualizować widok? Czy istnieje bardziej "kątowe" podejście do rozwiązania tego problemu, którego nie widzę?
Ten link będzie pomocny, jak sądzę. http://jimhoskins.com/2012/12/17/angularjs-and-apply.html – sorx00
nie powinno to być '$ scope. $ Apply();'? – ErichBSchulz
Możesz użyć zarówno zakresu, jak i zakresu, to tylko różnica w zapisie, ale powoduje to samo. – user1226868