AngularJS入門(用ng-repeat指令實(shí)現(xiàn)循環(huán)輸出)

字號(hào):


    這篇文章主要介紹了AngularJS入門(用ng-repeat指令實(shí)現(xiàn)循環(huán)輸出,需要的朋友可以參考下
    循環(huán)輸出列表很多項(xiàng)目在web服務(wù)端做,前端做好模版后后端寫jsp代碼,雙方需要緊密合作,分清責(zé)任。有些項(xiàng)目由后端提供restful方法,前端用ajax調(diào)用自己循環(huán),這種一般是大把的jquery拼字符串,太不直觀,有人搞出了js模板,也沒(méi)好到哪里去。
    用AngularJS就爽多了,語(yǔ)法和JSP類似:
    <!doctype html>
    <html ng-app>
    <head>
      <meta charset="utf-8">
      <title>ng-repeat directive</title>
    </head>
    <body>
    <table ng-controller="CartController">
      <caption>我的購(gòu)物車</caption>
      <tr>
        <th>序號(hào)</th>
        <th>商品</th>
        <th>單價(jià)</th>
        <th>數(shù)量</th>
        <th>金額</th>
        <th>操作</th>
      </tr>
      <tr ng-repeat="item in items">
        <td>{{$index + 1}}</td>
        <td>{{item.name}}</td>
        <td>{{item.price | currency}}</td>
        <td><input ng-model="item.quantity"></td>
        <td>{{item.quantity * item.price | currency}}</td>
        <td>
          <button ng-click="remove($index)">Remove</button>
        </td>
      </tr>
    </table>
    <script src="../lib/angularjs/1.2.26/angular.min.js"></script>
    <script>
      function CartController($scope) {
        $scope.items = [
          {name: "雷柏(Rapoo) V500 機(jī)械游戲鍵盤 機(jī)械黃軸", quantity: 1, price: 199.00},
          {name: "雷柏(Rapoo) V20 光學(xué)游戲鼠標(biāo) 黑色烈焰版", quantity: 1, price: 139.00},
          {name: "AngularJS權(quán)威教程", quantity: 2, price: 84.20}
        ];
        $scope.remove = function (index) {
          $scope.items.splice(index, 1);
        }
      }
    </script>
    </body>
    </html>
    ng-repeat指令生命在需要循環(huán)內(nèi)容的元素上,items和控制器上的變量名對(duì)應(yīng),item是為數(shù)組中單個(gè)對(duì)象起的別名。$index可以返回當(dāng)前引用對(duì)象的序號(hào),從0開(kāi)始,另外還有$first、$middle、$last可以返回布爾值,用于告訴你當(dāng)前元素是否是集合中的第一個(gè)中間的最后一個(gè)元素。