gpt4 book ai didi

javascript - 在 View 更改时重新计算 Angular 指令?

转载 作者:行者123 更新时间:2023-11-28 06:44:19 24 4
gpt4 key购买 nike

我有一个 div,其元素依赖于 ng-class 来设置一些样式属性(它调用一个返回类字符串的函数)。通常当 div 中的某些内容被修改时,Angular 会为我重新计算所有 ng-class 变量。但是,我在这个 div 之外有一个按钮,它只是向它添加一个类来改变它的宽度;发生这种情况时,Angular 不会重新计算 ng-class 函数。只有在我在该 div 中执行一些操作后,它才会为我计算所有内容。有什么办法可以在按下这个外部按钮后强制 Angular 重新计算吗?

最佳答案

如果您将数据传递给指令,可能会起作用

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {



})
.directive('testDirective', function() {
return {
restrict: 'E',
scope: {
classData: '='
},
template: '<div ng-class="classData"> My directive </div>'
};
});
.blue {
background: blue;
}
.green {
background: green;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<div ng-app="myApp" ng-controller="myCtrl">

<test-directive class-data="myClass"></test-directive>

<input type="text" ng-model="myClass" />(green or blue)

</div>

关于javascript - 在 View 更改时重新计算 Angular 指令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34121696/

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