gpt4 book ai didi

angularjs - 有没有办法避免/解决 Angularjs 计算属性每次运行两次?

转载 作者:行者123 更新时间:2023-12-01 12:45:08 25 4
gpt4 key购买 nike

http://jsfiddle.net/V9sYB/50/

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.6/angular.min.js"></script>
<div ng-app>
<div ng-controller="SomeCtrl">
<input ng-model="textProperty"/>
<span>{{computedProperty()}}</span>
</div>
</div>

脚本

function SomeCtrl($scope) {
$scope.textProperty = "initial";
var times = 0;
$scope.computedProperty = function(){
console.log(++times);
return $scope.textProperty+ " asdf";
};
}

有没有办法避免/解决 Angularjs 计算属性每次运行两次?

或者我是否必须为我永远不会在另一个 Controller 上重用的指令编写指令?

最佳答案

当您对 {{ 使用插值时,实际上是在其中的表达式上创建了一个监视。由于 angularjs 在脏检查主体上工作,因此它在摘要循环期间多次重新评估表达式,您无法控制插值内定义的任何表达式运行的次数。

因此,这样的计算属性\方法应该没有副作用,因为它被多次调用,而您作为开发人员无法控制。

关于angularjs - 有没有办法避免/解决 Angularjs 计算属性每次运行两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20879084/

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