1.官网链接  https://github.com/esvit/ng-table#4.0.0

2.安装ngTable后,一定要记得先注册到自己的项目

.module('pttengApp', [
'ngAnimate',
'ngCookies',
'ngResource',
'ngRoute',
'ngSanitize',
'ngTouch',
'mgcrea.ngStrap',
'ngTable'
])

3.编辑使用ngTable的controller  JS文件

angular.module('pttengApp')
.controller('ArticlelistCtrl', function ($scope,$location,ArticleService,NgTableParams) {/*NgTableParams一定要放在正确的位置*/
var self=this;
var simplelist=ArticleService.getAll(); /*这个就是传给NgTableParams的数据,也就是我们table里要显示的各行数据*/
self.tableParams=new NgTableParams({ count: 5},{counts: [5, 10, 20],dataset:simplelist});
self.selectedPageSizes=self.tableParams.settings().counts;
self.availablePageSizes = [5, 10, 15, 20, 25, 30, 40, 50, 100];
self.changePage = changePage; function changePage(nextPage){
self.tableParams.page(nextPage);
}
function changePageSize(newSize){
self.tableParams.count(newSize);
}
function changePageSizes(newSizes){
// ensure that the current page size is one of the options
if (newSizes.indexOf(self.tableParams.count()) === -1) {
newSizes.push(self.tableParams.count());
newSizes.sort();
}
self.tableParams.settings({ counts: newSizes});
}
});

4.html部分的书写

<table ng-table="articlelist.tableParams" show-filter="true" class="table table-hover">/*黑色高亮的就是使用ngTable的controller name*/
<tr ng-repeat="article in $data">/*强调这个$data就是说这个很关键,这个data是tableParams里的data数组,也就是通过dataset添加进去要显示的各行数据*/
<td>{{article.id}}</td>
<td>{{article.name}}</td>
<td>{{article.type}}</td>
<td>{{article.createtime}}</td>
<td>{{article.lastmodifiedtime}}</td>
</tr>
</table>

*************************

利用 yo angular:service Article-Service创建一个服务,生成的js文件里面可以创建一个构造函数,属性是JSON数据,方法就用来返回这些数据,然后我们就可以利用这个服务提供的数据进行前端功能的测试啦(在需要用到他的controller里面注人这个service,比如

.controller('ArticlelistCtrl', function ($scope,$location,ArticleService,NgTableParams) {

'use strict';

/**
* @ngdoc service
* @name pttengApp.ArticleService
* @description
* # ArticleService
* Service in the pttengApp.
*/
angular.module('pttengApp')
.service('ArticleService', function () {
// AngularJS will instantiate a singleton by calling "new" on this function
var articles = [
{
"id": "1",
"name": "行业动态",
"type": "行业",
"createtime": "2017-05-06",
"lastmodifiedtime": "2017-05-06",
"createuser": "admin",
"status": "0",
"operation": "delete"
},
{
"id": "2",
"name": "JSON",
"type": "语法",
"createtime": "2017-05-06",
"lastmodifiedtime": "2017-05-06",
"createuser": "admin",
"status": "0",
"operation": "delete"
}
]; return {
getAll: function () {
return articles;
},
getById: function () {
for (var i = 0; i < articles.length; i++) {
if (articles[i].id === id) {
return articles[i];
}
}
return null;
}
}; });

AngularJS学习之 ngTable 翻页 功能以及利用angular service准备测试数据的更多相关文章

  1. [Qt] CFlip 翻页功能实现

    由于需要给table制作翻页功能,所以写了一个翻页的类. 看上去总体效果感觉还是不错的,哈哈. //flip.h #ifndef CFLIP_H #define CFLIP_H #include &l ...

  2. jsp实现上一页下一页翻页功能

    前段时间一直忙于期末考试和找实习,好久没写博客了. 这段时间做了个小项目,包含了翻页和富文本编辑器Ueditor的两个知识点,Ueditor玩的还不是很深,打算玩深后再写篇博客. 要实现翻页功能,只需 ...

  3. Web测试——翻页功能测试用例

    参考:https://wenku.baidu.com/view/e6462707de80d4d8d15a4f1e.html?rec_flag=default&mark_pay_doc=2&am ...

  4. Atitit 翻页功能的解决方案与版本历史 v4 r49

    Atitit 翻页功能的解决方案与版本历史 v4 r49 1. 版本历史与分支版本,项目版本记录1 1.1. 主干版本历史1 1.2. 分支版本  项目版本记录.1 2. Easyui 的翻页组件2 ...

  5. Atitit.pagging  翻页功能解决方案专题 与 目录大纲 v3 r44.docx

    Atitit.pagging  翻页功能解决方案专题 与 目录大纲 v3 r44.docx 1.1. 翻页的重要意义1 1.2. Dep废弃文档   paip.js翻页分页pageing组件.txt1 ...

  6. PyQt—QTableWidget实现翻页功能

    主要使用QTableWidget中的三个函数实现: verticalScrollBar().setSliderPosition() 设置当前滑动条的位置 verticalScrollBar().max ...

  7. pyspider示例代码五:实现自动翻页功能

    实现自动翻页功能 示例代码一 #!/usr/bin/env python # -*- encoding: utf- -*- # Created on -- :: # Project: v2ex fro ...

  8. jsp实现翻页功能

    jsp实现翻页功能 要实现翻页功能,只需要设置一个pageIndex即可,然后每次加载页面时通过pageIndex去加载数据就行. 那么我们可以设置一个隐藏的input框,用于传递pageIndex给 ...

  9. jquery.Table实现的翻页功能比较完整漂亮,本想扩展个模版DIV

    jquery.dataTable实现的翻页功能比较完整漂亮,本想提取其的翻页部分,再结合模版DIV,bootstrop实现聊天记息的展示. jquery.Table 与table结合的较紧,不能在很下 ...

随机推荐

  1. python 信号量,Event, 定时器

    信号量 信号量也是一把锁,可以指定信号量为5,对比互斥锁同一时间只能有一个任务抢到锁去执行,信号量同一时间可以有5个任务拿到锁去执行. 如果说互斥锁是合租房屋的人去抢一个厕所,那么信号量就相当于一群路 ...

  2. MATLAB入门(一)数组

     特殊变量: 数组的创建: %% 数组的生成(带:不在命令行显示结果) x= rand() ; %随机生成3*3的矩阵,矩阵数的值在[,] x(:,::); %取所有行,(从第1列开始:步长为2:到第 ...

  3. zookeeper+kafka集群的安装部署

    准备工作 上传 zookeeper-3.4.6.tar.gz.scala-2.11.4.tgz.kafka_2.9.2-0.8.1.1.tgz.slf4j-1.7.6.zip 至/usr/local目 ...

  4. PEP_2007相关问题记录

    1.在C++中,int main(int argc, char** argv)中的参数是什么意思? 其中,第一个argc是输入的参数的个数,第二个argv可以理解为一个数组,我们可以通过argv来打印 ...

  5. Jenkins使用TFS部署

    之前发表过一篇Jenkins的文章 使用Jenkins部署.Net应用程序 里面是使用GIT做的版本管理 今天更新下使用TFS做版本管理 首先在插件管理中搜索tfs,我这里因为已经装了,所以在已安装列 ...

  6. DNF NPK包名对照一览表

    文章转载自:http://bbs.exrpg.com/thread-107917-1-1.html ┌ sprite.NPK                                      ...

  7. postgresql逻辑结构--触发器(三)

    触发器(tigger)是一种由事物自动触发执行的特殊存储过程,这些事件可以是对一个表进行INSERT.UPDATE.DELETE等操作. 一.创建触发器 create   [ constraint ] ...

  8. [Python学习笔记-001] 内置函数getattr()

    如果某个实例foo有多个方法, 当对foo的每一个方法我们都需要使用try ... except ...进行包装的时候,内置函数getattr()可以用来精简代码. 1. getattr()的用法 # ...

  9. ASP.NET 数据绑定到列表控件

    <div> <asp:ListBox ID="ListBox1" runat="server"></asp:ListBox> ...

  10. Go控制语句

    指针 Go虽然保留了指针,但是与其他编程语言不通的是,在Go当中不支持指针运算以及"->"运算符,而是直接采用"."选择符来操作指针目标对象的成员. 操作 ...