AngularJS ng-repeat遍歷輸出的用法,最近需要用,就順便發到隨筆上了
<!doctype html> <html> <head> <meta charset="utf-8"> <title>ng-repeat directive</title> </head> <body ng-app="myApp"> <table ng-controller="CartController"> <caption>我的購物車</caption> <tr> <th>序號</th> <th>商品</th> <th>單價</th> <th>數量</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="js/angular-1.3.0.14/angular.min.js"></script> <script> var app = angular.module('myApp', []); app.controller('CartController',function($scope){ $scope.items = [ {name: "蘋果 iPhone7", quantity: 1, price: 5088.00}, {name: "榮耀Magic", quantity: 1, price: 3699.00}, {name: "vivo X9", quantity: 2, price: 2798.00} ]; //$index包含了ng-repeat過程中的循環計數 $scope.remove = function (index) { $scope.items.splice(index, 1); } }) </script> </body> </html>
ng-repeat指令生命在需要循環內容的元素上,items和控制器上的變量名對應,item是為數組中單個對象起的別名。
$index可以返回當前引用對象的序號,從0開始,另外還有$first、$middle、$last可以返回布爾值,用於告訴你
當前元素是否是集合中的第一個中間的最後一個元素。