首页 > 编程 > JavaScript > 正文

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

2019-11-20 10:12:50
字体:
来源:转载
供稿:网友

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使用技巧,温故知新,希望大家从中可以有所收获。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表