我有一个简单的angular web应用程序和表单。表单包含2个<input>和1个<p>元素。模板值为angular p:
<p>{{status()}}</p>
$scope.status = function(){
alert('p');
return 'Some status';
}当页面全部加载正常显示时,我在<p>中看到alert和'Some status'。但我有个问题。当我尝试向<input>输入某些内容时,每次向input键入任何符号时,都会一次又一次地看到alert('p')。为什么?
谢谢。
发布于 2013-05-23 17:00:50
我猜你有一个ng-model的输入。当您的输入被修改时,模型也会改变。每次更改之后,angular都会运行摘要,它会重新计算视图中的所有表达式(从技术上讲,它会处理监视列表)。您应该在Angular concepts in the Angular developer guide中阅读有关它的信息。
发布于 2013-05-23 16:59:35
我认为在你的输入上也有数据绑定,这就是为什么angular会在你每次使用键输入更改内容时验证作用域,并调用警报,因为angular必须执行函数来检查返回的值是否仍然相同。
https://stackoverflow.com/questions/16709474
复制相似问题