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 相关文章推荐
ExtJS Store的数据访问与更新问题
Apr 28 Javascript
PHP 与 js的通信(via ajax,json)
Nov 16 Javascript
jQuery源码分析-01总体架构分析
Nov 14 Javascript
当json键为数字时的取值方法解析
Nov 15 Javascript
PHP中使用微秒计算脚本执行时间例子
Nov 19 Javascript
解决jQuery使用JSONP时产生的错误
Dec 02 Javascript
JavaScript从数组的indexOf()深入之Object的Property机制
May 11 Javascript
极力推荐一款小巧玲珑的可视化编辑器bootstrap-wysiwyg
May 27 Javascript
Bootstrap学习笔记之进度条、媒体对象实例详解
Mar 09 Javascript
浅谈vue中慎用style的scoped属性
Nov 28 Javascript
vue实现浏览器全屏展示功能
Nov 27 Javascript
javascript设计模式 ? 简单工厂模式原理与应用实例分析
Apr 09 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
注意:php5.4删除了session_unregister函数
2013/08/05 PHP
php中error与exception的区别及应用
2014/07/28 PHP
php递归遍历删除文件的方法
2015/04/17 PHP
php实现微信支付之企业付款
2018/05/30 PHP
JavaScript中的Screen屏幕对象
2008/01/16 Javascript
键盘 keycode的值 javascript时触发事件时很有用的要素
2009/11/02 Javascript
js利用与或运算符优先级实现if else条件判断表达式
2010/04/15 Javascript
jQuery select操作控制方法小结
2010/05/26 Javascript
JavaScript 原型与继承说明
2010/06/09 Javascript
使用jQuery动态加载js脚本文件的方法
2014/04/03 Javascript
jQuery获得包含margin的outerWidth和outerHeight的方法
2015/03/25 Javascript
原生JS实现拖拽图片效果
2020/08/27 Javascript
解读Bootstrap v4 sass设计
2016/05/29 Javascript
Angular表单验证实例详解
2016/10/20 Javascript
Vue.js双向绑定操作技巧(初级入门)
2016/12/27 Javascript
JavaScript实现简单的树形菜单效果
2017/06/23 Javascript
Vue.js最佳实践(五招助你成为vuejs大师)
2018/05/04 Javascript
javascript中UMD规范的代码推演
2018/08/29 Javascript
详解puppeteer使用代理
2018/12/27 Javascript
vue自定义指令之面板拖拽的实现
2019/04/14 Javascript
重置Redux的状态数据的方法实现
2019/11/18 Javascript
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
vue搜索页开发实例代码详解(热门搜索,历史搜索,淘宝接口演示)
2020/04/11 Javascript
Auto.JS实现抖音刷宝等刷视频app,自动点赞,自动滑屏,自动切换视频功能
2020/05/08 Javascript
js实现双人五子棋小游戏
2020/05/28 Javascript
解决vue+webpack项目接口跨域出现的问题
2020/08/10 Javascript
Python操作MongoDB详解及实例
2017/05/18 Python
Python在for循环中更改list值的方法【推荐】
2018/08/17 Python
Python 多个图同时在不同窗口显示的实现方法
2019/07/07 Python
Python如何实现后端自定义认证并实现多条件登陆
2020/06/22 Python
python全栈开发语法总结
2020/11/22 Python
What is EJB
2016/07/22 面试题
2015年防汛工作总结
2015/05/15 职场文书
2016寒假假期总结
2015/10/10 职场文书
SpringBoot快速入门详解
2021/07/21 Java/Android
详解Redis的三种常用的缓存读写策略步骤
2022/05/06 Redis