gpt4 book ai didi

angularjs - Angular ng-animate 1.3.* 导致 ng-class inside 指令出现意外行为

转载 作者:行者123 更新时间:2023-12-03 20:52:31 25 4
gpt4 key购买 nike

我正处于从版本 1.2.* 到 1.3.* 的过渡中,我遇到了一个非常奇怪的 关键 漏洞。

在我的应用程序中,我有一个非常简单的 directive包含 templateng-class (具有范围属性的条件)由于某种原因它不适用于 1.3.* 版本,但它适用于 1.2.* 版本。

看看这个Plunker来说明问题。

这个Plunker代码是 angular 1.2.* 版本,你可以看到它工作正常。

尝试更改 Angular 版本(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>-->

刷新页面,然后你可以看到 错误:
Angular 不会根据“事件”属性的变化来刷新 ng-class。

我试图了解导致此错误的原因,经过多次尝试后我发现 'ngAnimate'模块导致此问题。尝试删除 'ngAnimate'依赖项(script.js):
  //var app = angular.module('app', ['ngAnimate']);
var app = angular.module('app', []);

然后你可以看到一切都很好,所以 'ngAnimate'版本 1.3.* 导致此问题。

所以它是 AngularJS 错误 , 我对吗?

如果没有,我做错了什么?

最佳答案

你有什么特别的理由使用 replace指令中的选项?如果没有,您可以将其删除,它可以正常工作。使用 Angular 1.3.9 链接到工作 plunker:

http://plnkr.co/edit/jLIS9uJ1PHC64q6nEmtB?p=preview

V1.3.9 docs告诉 replace已被弃用并且很少需要指令起作用,显然在您的情况下它也设法造成了一些麻烦。

关于angularjs - Angular ng-animate 1.3.* 导致 ng-class inside 指令出现意外行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28045585/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com