繁体   English   中英

Angular-> ng-repeat过滤数组变量

[英]Angular -> ng-repeat filtered array variable

下面,我将链接到我在Plunker中的示例,以向您展示我的问题。 ng-repeat我使用array(filtrowane)来存储来自过滤器结果的数据,我还在输入上添加了ng-change,以在控制台中显示filtrowane.length的值。 变量filtrowane在控制器中定义,键入一​​些内容后,它在控制台和视图中显示不同的值,您能告诉我为什么吗?

PS。 运行您的Web浏览器控制台,您将看到区别。

样例

使用ng-blur而不是ng-change

<input type="text" ng-model="search" ng-blur="sprawdzFiltr()">

这是由于ng-change可能是在应用过滤器之前执行的,因此将采用旧值。

更改值时,首先调用ng-change,然后$ digest启动,这将更新filtrowane 如果使用这样的符号:

item in filtrowane = (tablica | filter:search)

不要在控制器中使用filtrowane HTML应该是view,因此您不应在其中声明在模型(js)中使用的任何变量。

在这里查看: http : //plnkr.co/edit/QAHlbuZqWX4szglvMP87?p=preview此代码与您的代码相同,但是过滤是在javascript中完成的。 稍微复杂一点,但是事情更清楚了。 (对于大型数组也更好)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM