Come posso forzare il re-rendering della mia direttiva
Modello
<div ng-if="showDirective">
<my-directive attr="value"></my-directive>
</div>
<button ng-click="toggleDirective()">Toggle</button>
controllore
$scope.showDirective = true
$scope.toggleDirective = function() {
$scope.showDirective = !$scope.showDirective;
}
Ho una richiesta Ajax nella direttiva che recupera i dati e loop anche se ng-repeat.
Carico della direttiva per la prima volta a carico della pagina. Quando faccio clic sul pulsante di attivazione / disattivazione per la prima volta nasconde la direttiva, quando faccio clic sull'interruttore ricomincia a caricare dalla cache o esegue il rendering della dom precedente. Come posso forzare il re-rendering della direttiva quando mai il suo show ..
risposte:
0 per risposta № 1Ricompilare il markup è l'unica possibilità di re-renderlo ....
TUTTAVIA, perché lo faresti? Forse sarebbe sufficiente aggiornare la tua lista in ng-repeat? AngularJS vedrà le modifiche e ri-renderizza la lista stessa, senza bisogno di rer-endering manuale.