最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

angularjs表格ng-table使用備忘錄

 更新時間:2016年03月09日 17:17:53   作者:彼岸花在開  
這篇文章主要為大家分享了angularjs表格ng-table使用備忘錄,感興趣的小伙伴們可以參考一下

項目中用到angularjs的表格ng-table,功能相當強大,像搜索、排序、checkbox、分頁、每頁表格顯示數目等都有。API,demo什么的也只能參考官網了。這里做個備忘,哪天肯定還會用到。

HTML:

<!DOCTYPE html>
<html>
<meta charset="utf-8"/>
<head>
  <script data-require="angular.js@*" data-semver="1.2.0-rc3-nonmin" src="angular.js"></script>
  <script data-require="ng-table@*" data-semver="0.3.0" src="ngTable.js"></script>
  
  <link data-require="ng-table@*" data-semver="0.3.0" rel="stylesheet"  />
  <link data-require="bootstrap-css@*" data-semver="3.0.0" rel="stylesheet" href="bootstrap.min.css" />
  
  <link rel="stylesheet" href="style.css" />
  <script src="script.js"></script>
</head>

<body ng-app="main" ng-controller="DemoCtrl">
  <p><strong>Page:</strong> {{tableParams.page()}}
  <p><strong>Count per page:</strong> {{tableParams.count()}}

<p>Filter: <input class="form-control" type="text" ng-model="filter.$" /></p>

  <table ng-table="tableParams" show-filter="true" class="table">
    <tr ng-repeat="user in $data" ng-class="{ 'emphasis': user.money > 500 }">
      <td width="30" style="text-align: left" header="'ng-table/headers/checkbox.html'">
        <input type="checkbox" ng-model="checkboxes.items[user.organizationId]" />
      </td>
      <td data-title="'編號'" sortable="'organizationId'">
        {{user.organizationId}}
      </td>
      <td data-title="'名稱'" sortable="'name'">
        {{user.name}}
      </td>
    </tr>
  </table>
  <script type="text/ng-template" id="ng-table/headers/checkbox.html">
    <input type="checkbox" ng-model="checkboxes.checked" id="select_all" name="filter-checkbox" value="" />
  </script>

</body>
</html>

js:

var app = angular.module('main', ['ngTable']).
controller('DemoCtrl', function($scope, ngTableParams, NameService) {

  var data = NameService.data;

  $scope.tableParams = new ngTableParams(
   {
    page: 1,      // show first page
    count: 10,      // count per page
    sorting: {name:'asc'}
   },
   {
    total: 0, // length of data
    getData: function($defer, params) {
     NameService.getData($defer,params,$scope.filter);
    }
  });
  
  $scope.$watch("filter.$", function () {
    $scope.tableParams.reload();
  });
  
});

app.service("NameService", function($http, $filter){
 
 function filterData(data, filter){
  return $filter('filter')(data, filter);
 }
 
 function orderData(data, params){
  return params.sorting() ? $filter('orderBy')(data, params.orderBy()) : filteredData;
 }
 
 function sliceData(data, params){
  return data.slice((params.page() - 1) * params.count(), params.page() * params.count())
 }
 
 function transformData(data,filter,params){
  return sliceData( orderData( filterData(data,filter), params ), params);
 }
 
 var service = {
  cachedData:[],
  getData:function($defer, params, filter){
   if(service.cachedData.length>0){
    console.log("using cached data")
    var filteredData = filterData(service.cachedData,filter);
    var transformedData = sliceData(orderData(filteredData,params),params);
    params.total(filteredData.length)
    $defer.resolve(transformedData);
   }
   else{
    console.log("fetching data")
    $http.get("data.json").success(function(resp)
    {
     angular.copy(resp,service.cachedData)
     params.total(resp.length)
     var filteredData = $filter('filter')(resp, filter);
     var transformedData = transformData(resp,filter,params)
     
     $defer.resolve(transformedData);
    }); 
   }
   
  }
 };
 return service; 
});

json數據:

[{
      "hidden": 1,
      "launchImage": "2015_4_9_12_bb7e0a446ed74ae7ad0a3554a54183bc_1298477763",
      "name": "張三",
      "orgId": 1498031949070997504,
      "organizationId": "1498031949070997504"
    }, {
      "hidden": 1,
      "launchImage": "http://7s1rmc.com1.z0.glb.clouddn.com/2015_4_9_12_0ab5b02cf1df4ac49a7376b820816307_2127491219|39e202124ac90ec531009b0edbbbe0ba",
      "name": "李四",
      "orgId": 1498046360909250560,
      "organizationId": "1498046360909250560"
    }]

以上就是本文的全部內容,希望對大家的學習有所幫助。

相關文章

  • Nodejs?Socket連接池及TCP?HTTP網絡模型詳解

    Nodejs?Socket連接池及TCP?HTTP網絡模型詳解

    這篇文章主要為大家介紹了Nodejs?Socket連接池及TCP?HTTP網絡模型,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • node.js插件nodeclipse安裝圖文教程

    node.js插件nodeclipse安裝圖文教程

    這篇文章主要為大家分享了node.js插件nodeclipse安裝圖文教程,如何安裝node.js支持插件,下面小編為大家分享具體步驟
    2016-05-05
  • NodeJS學習筆記之Module的簡介

    NodeJS學習筆記之Module的簡介

    模塊是Node.js 應用程序的基本組成部分,文件和模塊是一一對應的。換言之,一個 Node.js 文件就是一個模塊,這個文件可能是JavaScript 代碼、JSON 或者編譯過的C/C++ 擴展。
    2017-03-03
  • 詳解Nodejs之npm&package.json

    詳解Nodejs之npm&package.json

    本篇文章主要介紹了詳解Nodejs之npm&package.json,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Node.js項目依賴問題的詳細解決步驟

    Node.js項目依賴問題的詳細解決步驟

    在現(xiàn)代前端開發(fā)中,Node.js 和 npm 是不可或缺的工具,然而,隨著項目的迭代和依賴包的更新,我們常常會遇到依賴沖突、構建失敗等問題,本文將通過一個實際案例,詳細講解如何解決 Node.js 項目中的依賴問題,包括升級 Node.js 和 npm、替換過時的依賴包、修復構建錯誤等
    2025-02-02
  • 使用Puppeteer實現(xiàn)頁面遍歷的示例代碼

    使用Puppeteer實現(xiàn)頁面遍歷的示例代碼

    很多時候我們需要遍歷我們的頁面來檢查頁面是否存在問題,以更好的保證可用性和安全性,下面就來講講如何使用puppeteer來實現(xiàn)頁面遍歷的功能吧
    2023-06-06
  • Nodejs模塊的調用操作實例分析

    Nodejs模塊的調用操作實例分析

    這篇文章主要介紹了Nodejs模塊的調用操作,結合實例形式分析了nodejs模塊的定義與調用相關操作技巧,需要的朋友可以參考下
    2018-12-12
  • 使用socket.io實現(xiàn)簡單聊天室案例

    使用socket.io實現(xiàn)簡單聊天室案例

    這篇文章主要介紹了使用socket.io實現(xiàn)簡單聊天室案例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • node上的redis調用優(yōu)化示例詳解

    node上的redis調用優(yōu)化示例詳解

    這篇文章主要給大家介紹了關于node上redis調用優(yōu)化的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-10-10
  • NodeJS實現(xiàn)圖片上傳代碼(Express)

    NodeJS實現(xiàn)圖片上傳代碼(Express)

    本篇文章主要介紹了NodeJS實現(xiàn)圖片上傳代碼(Express) ,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論

安阳市| 天气| 辽阳县| 颍上县| 岳阳县| 柞水县| 扶绥县| 梅州市| 汶川县| 许昌市| 沛县| 林西县| 白沙| 赤峰市| 治多县| 特克斯县| 南昌市| 襄城县| 常熟市| 环江| 格尔木市| 玉溪市| 汪清县| 辽中县| 新邵县| 平罗县| 利津县| 乌鲁木齐市| 含山县| 新兴县| 龙陵县| 阳曲县| 蕲春县| 砚山县| 辽宁省| 葫芦岛市| 贵定县| 阿克| 义乌市| 伊川县| 什邡市|