博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[Angular Tutorial] 5-Filtering Repeaters
阅读量:6697 次
发布时间:2019-06-25

本文共 971 字,大约阅读时间需要 3 分钟。

在上一步中,我们花了很大功夫来布局应用的基础,所以我们现在做点简单点的吧!我们将会添加一个全文本搜索框(没错,这很简单)。

  ·我们的应用现在会有一个搜索框,注意页面中手机列表的改变取决于用户在搜索框键入的内容。

最重要的变化列举如下,当然,你也可以在GitHub上查看全部的不同。

控制器

我们对控制器不做任何修改。

模板

app/phone-list/phone-list.template.html:

 

Search:
  • { {phone.name}}

    { {phone.snippet}}

 

  

 

我们添加了标准的HTML<input>标签并且使用Angular的函数来为指令处理输入的内容。

多亏了 指令的强大,这可以使用户在电话列表中输入搜索条件并且可以及时看到搜索结果,新的代码展示了:

  ·数据绑定,这是Angular的核心特性之一。当页面加载时,Angular将输入框中的值和由ngModel指定的数据模型变量绑定到一起,并且保持二者的同步。

  在这段代码中,用户在输入框中输入的数据(由$ctrl.query绑定)可以立即作为一个列表迭代器(phone in $ctrl.phones | filter:$ctrl.query)中的过滤器。当数据模型的改变导致了迭代器输入的改变时,迭代器会高效地更新DOM来反映当前数据模型的状态。

  ·filter过滤器的使用:函数使用$ctrl.query的值来创建一个只包含那些匹配query的值得电话列表。

  通过filter过滤器返回的改变的电话数目,ngRepeat自动更新视图,这个过程对于开发者来说是完全透明的。

总结

我们已经添加了全文搜索,让我们进入下一步来学习如何为电话应用添加排序功能吧!

 

转载于:https://www.cnblogs.com/krischan/p/5521854.html

你可能感兴趣的文章
6000个边缘Kubernetes节点驱动城市80万次智能停车,如何成为可能?
查看>>
互联网
查看>>
Spring Boot 整合Mybatis (一)
查看>>
mysql用户的权限分配
查看>>
一份从 0 到 1 的 Java 项目实践清单
查看>>
持续集成与持续部署宝典Part 2:创建持续集成流水线
查看>>
2018杭州云栖大会,梁胜博士的演讲PPT来啦!
查看>>
docker 中不能用vim编辑文件
查看>>
javascript高级程序设计学习之数值转换 |Number(),parseInt(),parseFloat()
查看>>
Angular属性型指令
查看>>
区分同源与非同源
查看>>
JVM(一)史上最佳入门指南
查看>>
线程02
查看>>
c# 编程学习(二)
查看>>
Spring集成redis(Spring Data Redis)
查看>>
字符串处理方法
查看>>
Linux统计文件行数、字数、字节数
查看>>
linux逻辑卷管理
查看>>
HTTP状态码详解
查看>>
Redis入门到精通-Redis数据类型
查看>>