为什么`filter`会触发多次?

ati*_*n25 5 angularjs

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

为什么filter多次触发?

我想{{name|test}}会跳过两次,因为名字null起初是,然后在控制器上获得价值.

为什么filter在包含模板时会触发?

Mar*_*cok 9

每个过滤器在每个摘要周期至少调用一次. 这个答案有一个小提琴,证明这一点.

加载模板时,您处于摘要周期,因此将调用所有过滤器.

  • @ atian25,一种方法是避免过滤器运行是不使用过滤器 - 我的意思是在控制器中计算一次过滤值,将结果存储在范围属性中,然后在视图中使用该属性.这显然不适用于每个过滤器,但它适用于某些过滤器. (3认同)