亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Angular.js中用ng-repeat-start實現自定義顯示?

Angular.js中用ng-repeat-start實現自定義顯示?

汪汪一只貓 2018-09-13 11:06:52
Angular.js中用ng-repeat-start實現自定義顯示
查看完整描述

1 回答

?
一只甜甜圈

TA貢獻1836條經驗 獲得超5個贊

前言

 

眾所周知AngularJS 中可以使用 ng-repeat 顯示列表數據,這對大家來說應該都不陌生了, 用起來很簡單, 也很方便, 比如要顯示一個產品表格, Controller 的 Javascript 代碼如下:

     angular.module('app', [])  .controller('MyController', MyController);    MyController.$inject = ['$scope'];  function MyController($scope) {   // 要顯示的產品列表數據;   $scope.products = [    {     id: 1,     name: 'Product 1',     description: 'Product 1 description.'    },    {     id: 2,     name: 'Product 3',     description: 'Product 2 description.'    },    {     id: 3,     name: 'Product 3',     description: 'Product 3 description.'    }   ];  }    

對應的 HTML 視圖代碼如下:

      <table class="table">    <tr>     <th>id</th>     <th>name</th>     <th>description</th>     <th>action</th>    </tr>    <tr ng-repeat="p in products">     <td></td>     <td></td>     <td></td>     <td><a href="#">Buy</a></td>    </tr>   </table>    

運行效果圖:

 

 

可是如果全部頁面都是每個產品占一行來顯示, 未免太枯燥了, 比如用戶希望這樣子自定義顯示:

 

 

每個產品占表格的兩行, 這樣的效果用 ng-repeat 就沒辦法實現了。 不過 AngularJS 提供了 ng-repeat-start 和 ng-repeat-end 來實現上面的需求, ng-repeat-start 和 ng-repeat-end 的語法如下:

      <header ng-repeat-start="item in items">    Header    </header>   <div class="body">    Body    </div>   <footer ng-repeat-end>    Footer    </footer>    

假設提供了 ['A','B'] 兩個產品, 則生成的 HTML 結果如下:

      <header>    Header A   </header>   <div class="body">    Body A   </div>   <footer>    Footer A   </footer>   <header>    Header B   </header>   <div class="body">    Body B   </div>   <footer>    Footer B   </footer>    

了解了 ng-repeat-start 和 ng-repeat-end 的用法之后, 上面要求的界面就很容易實現了, 代碼如下:

      <table class="table table-bordered">    <tr ng-repeat-start="p in products">     <td></td>     <td rowspan="2"><a href="#">Buy</a></td>    </tr>    <tr ng-repeat-end>     <td></td>    </tr>   </table>    

總結

 

以上就是Angular.js中利用ng-repeat-start實現自定義顯示的全部內容,希望本文的內容對大家學習或者使用Angular.js能有所幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。


查看完整回答
反對 回復 2018-09-23
  • 1 回答
  • 0 關注
  • 970 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號