Angular.js回想+学习笔记(1)【ng-app和ng-model】

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>




posted @ 2017-08-09 10:15  zhchoutai  阅读(221)  评论(0编辑  收藏  举报