Ich bin in der Mitte des Übergangs von Version 1.2. * Zu 1.3. *, Und ich stieß auf eine sehr seltsame und kritische Fehler.Angular ng-animate 1.3. * Ursachen für unerwartetes Verhalten der ng-Klasse innerhalb der Direktive
In meiner Anwendung habe ich eine sehr einfache directive
enthalten ein template
mit ng-class
(mit Bedingung Umfang Eigenschaft) aus irgendeinem Grund funktioniert es nicht mit 1.3. * Version, und es ist gut funktionieren mit 1.2. * Version.
Werfen Sie einen Blick auf diese Plunker, um das Problem zu veranschaulichen.
Dieser Plunker
Code ist mit eckiger 1.2. * Version, und wie Sie sehen können, ist es in Ordnung.
Versuchen Sie, die abgewinkelte Ausführung ändern (index.html)
<script src="https://code.angularjs.org/1.3.9/angular.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-animate.js"></script>
<!--<script src="https://code.angularjs.org/1.2.28/angular.js"></script>
<script src="https://code.angularjs.org/1.2.28/angular-animate.js"></script>-->
Refresh die Seite, und dann können Sie den Fehler sehen:
Angular nicht aktualisiert die ng-Klasse nach zu der 'aktiven' Eigenschaft ändern.
Ich habe versucht zu verstehen, was zu diesem Fehler führen kann, und nach vielen Versuchen habe ich festgestellt, dass 'ngAnimate'
Modul zu diesem Problem führt. versuchen, die 'ngAnimate'
Abhängigkeit (script.js) zu löschen:
//var app = angular.module('app', ['ngAnimate']);
var app = angular.module('app', []);
Und dann kann man sehen, dass alles in Ordnung ist, so 'ngAnimate'
Version 1.3 * Ursachen für dieses Problem..
So ist es AngularJS Bug, habe ich Recht?
Wenn nicht, was mache ich falsch?
Danke für den Tipp. Ich habe seit dem Upgrade ein Problem mit der ng-Klasse festgestellt, bei dem die Klasse entweder nicht aktualisiert wurde, oder der alte und der neue Wert der aktualisierten Bereichsvariablen wurden beibehalten. Ich hatte das ng-animate-Modul referenziert, benutzte es aber nicht. Seitdem ich diese Referenz entfernt habe, habe ich das Problem bisher nicht gesehen. – Lukus
hast du das überprüft? https://docs.angularjs.org/guide/migration#animation-nanimate- –