Angular.js回顾ng-app和ng-model使用技巧


Posted in Javascript onApril 26, 2016

Angular.js中index.html简单结构:

<!doctype html> 
<html ng-app> 
  <head> 
    <script src="http://code.angularjs.org/angular-1.0.1.min.js"></script> 
  </head> 
  <body> 
    Your name: <input type="text" ng-model="yourname" placeholder="World"> 
    <hr> 
    Hello {{yourname || 'World'}}! 
  </body> 
</html>

ng-app属性是angular.js的标志语句,它标记了angular.js的作用域。ng-app可以添加在很多地方,像上面那样添加到html标签上,说明angular脚本对整个页面都起作用。也可以在局部添加ng-app属性,比如在某一个div内添加ng-app,则表明接下来的整个div区域使用angular脚本解析,而其他位置则不适用angular脚本解析。
ng-model表示建立一个数据模型。这里在input输入姓名的输入框内,我们把该定义了一个yourname数据模型。定义了该模型后,我们可以在下面进行调用,方法是利用{{}}。这样就完成了数据绑定,当我们在输入框内输入内容时,会同步到下面的Hello语句块中。
ng-model定义的数据模型不仅可以用于上述场景,还能在许多情况下得到广泛应用。
1、设置filter,实现搜索功能
在下面的代码中,我们利用一个简单的数据模型定义+filter就可以完成一个列表搜索功能。(这是中文网上的实例代码,先不需要管不清楚的部分)

<div class="container-fluid"> 
 <div class="row-fluid"> 
  <div class="span2"> 
   Search: <input ng-model="query"> 
  </div> 
  <div class="span10"> 
   <ul class="phones"> 
    <li ng-repeat="phone in phones | filter:query"> 
     {{phone.name}} 
    <p>{{phone.snippet}}</p> 
    </li> 
   </ul> 
    </div> 
 </div> 
</div>

 上述代码中,为搜索框的input标签绑定了数据模型query。这样,用户输入的信息会被同步到query数据模型中。在下面的li中,使用filter:query就可以实现列表中的数据过滤功能,按照用户的输入信息进行filter过滤。
2、设置orderBy,实现列表排序功能
在下面的代码中,与filter同理,使用orderBy为列表添加一个排序功能:

Search: <input ng-model="query"> 
Sort by: 
<select ng-model="orderProp"> 
 <option value="name">Alphabetical</option> 
 <option value="age">Newest</option> 
</select> 
<ul class="phones"> 
 <li ng-repeat="phone in phones | filter:query | orderBy:orderProp"> 
  {{phone.name}} 
  <p>{{phone.snippet}}</p> 
 </li> 
</ul>

以上就是关于ng-app和ng-model使用技巧,温故知新,希望大家从中可以有所收获。

Javascript 相关文章推荐
JS 动态获取节点代码innerHTML分析 [IE,FF]
Nov 30 Javascript
基于jquery的网页SELECT下拉框美化代码
Oct 28 Javascript
鼠标滚轮控制网页横向移动实现思路
Mar 22 Javascript
jquery 按钮状态效果 正常、移上、按下
Aug 12 Javascript
javascript设计模式之工厂模式示例讲解
Mar 04 Javascript
jQuery实现复选框的全选和反选
Feb 02 Javascript
vuejs2.0实现分页组件使用$emit进行事件监听数据传递的方法
Feb 22 Javascript
windows下vue-cli及webpack搭建安装环境
Apr 25 Javascript
php 修改密码实现代码
May 24 Javascript
前端图片懒加载(lazyload)的实现方法(提高用户体验)
Aug 21 Javascript
Vue的轮播图组件实现方法
Mar 03 Javascript
JS实现的汉字与Unicode码相互转化功能分析
May 25 Javascript
Bootstrap每天必学之工具提示(Tooltip)插件
Apr 26 #Javascript
Bootstrap网格系统详解
Apr 26 #Javascript
Bootstrap每天必学之标签页(Tab)插件
Aug 09 #Javascript
Bootstrap按钮组件详解
Apr 26 #Javascript
Bootstrap每天必学之警告框插件
Apr 26 #Javascript
jQuery Mobile页面返回不需要重新get
Apr 26 #Javascript
jQuery 中的 DOM 操作
Apr 26 #Javascript
You might like
解决ThinkPHP下使用上传插件Uploadify浏览器firefox报302错误的方法
2015/12/18 PHP
PHP实现文件上传操作和封装
2020/03/04 PHP
js post方式传递提交的实现代码
2010/05/31 Javascript
JSONP 跨域共享信息
2012/08/16 Javascript
javascript中日期转换成时间戳的小例子
2013/03/21 Javascript
jQuery当鼠标悬停时放大图片的效果实例
2013/07/03 Javascript
防止jQuery ajax Load使用缓存的方法小结
2014/02/22 Javascript
jQuery实现自定义事件的方法
2015/04/17 Javascript
JavaScript使用cookie实现记住账号密码功能
2015/04/27 Javascript
jQuery定义插件的方法
2015/12/18 Javascript
js实现简单的省市县三级联动效果实例
2016/02/18 Javascript
在Html中使用Requirejs进行模块化开发实例详解
2016/04/15 Javascript
JavaScript仿淘宝页面图片滚动加载及刷新回顶部的方法解析
2016/05/24 Javascript
js事件委托和事件代理案例分享
2017/07/25 Javascript
JS分页的实现(同步与异步)
2017/09/16 Javascript
微信小程序使用modal组件弹出对话框功能示例
2017/11/29 Javascript
Python中使用logging模块代替print(logging简明指南)
2014/07/09 Python
python常用web框架简单性能测试结果分享(包含django、flask、bottle、tornado)
2014/08/25 Python
python使用wxpython开发简单记事本的方法
2015/05/20 Python
python实现字典(dict)和字符串(string)的相互转换方法
2017/03/01 Python
对Python3 * 和 ** 运算符详解
2019/02/16 Python
详解python中index()、find()方法
2019/08/29 Python
tensorflow实现二维平面模拟三维数据教程
2020/02/11 Python
新手学python应该下哪个版本
2020/06/11 Python
购买大码女装:Lane Bryant
2016/09/07 全球购物
老公给老婆的保证书
2014/04/28 职场文书
我们的节日清明节活动总结
2014/04/30 职场文书
公司财务经理岗位职责
2015/04/08 职场文书
公司保洁员管理制度
2015/08/04 职场文书
学校2016年九九重阳节活动总结
2016/04/01 职场文书
python 模拟在天空中放风筝的示例代码
2021/04/21 Python
python内置进制转换函数的操作
2021/06/02 Python
探究Mysql模糊查询是否区分大小写
2021/06/11 MySQL
详解MySQL的主键查询为什么这么快
2022/04/03 MySQL
Flutter集成高德地图并添加自定义Maker的实践
2022/04/07 Java/Android
mysql使用FIND_IN_SET和group_concat两个方法查询上下级机构
2022/04/20 MySQL