qual è il modo angolare di aggiornare una variabile rootScope da una direttiva? ho difficoltà a capire come funzionano gli ambiti nelle direttive ...
finora posso solo modificare la variabile sul livello di ambito.
app.run(['$rootScope', function($rootScope) {
$rootScope.foo = false;
}
app.directive('myDirective', [function(){
return {
restrict: 'A',
link: function(scope, elem, attrs) {
elem.bind('click', function() {
scope.$parent.foo = true;
scope.$parent.apply();
});
}
}
}]);
<!-- does not update foo -->
<p>{{ foo }}</p>
<!-- updates foo -->
<div my-directive><p>{{ foo }}</p></div>
grazie. così ovvio. dovevo anche includere $ rootScope. $ apply(); dopo aver impostato la variabile per aggiornarla. – vesperae
@vesperae Salve, quando ho chiamato $ rootScope. $ Apply(), c'è un errore generato: https://docs.angularjs.org/error/$rootScope/inprog?p0=$apply –
@PhuNguyen, che significa angularjs sta facendo $ digest per te – Irshu