假设每次我在应用程序中执行某些操作时,摘要循环都会运行,这是否安全?它不是那种经常运行AFAIK的循环,所以当我想要它时,它就不会执行它的威胁。
如果我在html中有ng-if
检查服务中的布尔值。我需要明确创建一个$watch
,对吗? ng-if
将隐藏或显示一些文字。
我想确保如果值为false
,则文本将被隐藏。
答案 0 :(得分:0)
你不需要任何$ watch。
你有一些带有ngIf指令的html代码。有一些模型,分配给该指令。另外,假设你有一个按钮,它可以恢复模型的调用功能。这个函数将是你的按钮的click
处理程序。您将拥有类似ng-click='myFoo();
的内容。当您单击按钮时,ngClick指令将自动触发$ digest循环。
所以,如果你想操纵DOM,你必须调用$ digest。常见指令,如ngClick,自己调用$ digest。如果您使用自己的指令或某些不会调用$ digest的指令,则必须自己调用它。
要自行致电摘要,您可以使用$timeout
服务或$scope.$apply
,例如。
$scope.$apply(function () { $scope.someModel = true; });
将触发函数代码,$ apply将启动$ digest循环