基于vue的分页插件
相信大家用过很多jquery的分页插件,那这次就用一用基于vue的分页插件。
这里的环境用的是springboot
首先要引入pagehelper的jar文件,版本是1.2.3,配置文件也需要配置一下
核心代码:
DAO层
接口:
List<Article> selectAll();
mapper文件:
只需要写一个简单的查询即可。
<select id="selectAll" resultMap="ResultMapWithBLOBs">
select <include refid="Base_Column_List"/> from article
</select>
Service层:
接口:
PageInfo<Article> selectAll(int pageNum,int pageSize);
实现:
@Override
public PageInfo<Article> selectAll(int pageNum,int pageSize) {
Page<Article> page = PageHelper.startPage(pageNum, pageSize);
articleMapper.selectAll();
return page.toPageInfo();
}
Controller层:
@RequestMapping("/selectAll")
@ResponseBody
public Object selectArticleAll(@RequestParam(required = true,defaultValue = "0")int pageNum,
@RequestParam(required = true,defaultValue = "3")int pageSize){
PageInfo<Article> articlePageInfo = articleService.selectAll(pageNum, pageSize);
return articlePageInfo;
}
前台代码:
引入所需的js和css文件:
<link rel="stylesheet" th:href="@{/css/zpageNav.css}"/>
<script th:src="@{/js/vue.js}"></script>
<script th:src="@{/js/zpageNav.js}"></script>
<script src="https://cdn.staticfile.org/vue-resource/1.5.1/vue-resource.min.js"></script>
html:
<div id="container">
<article class="article" v-for="item in articleList">
<time>{{item.time}}</time>
<h2 class="title"><a href="article?id=${article.id}">{{item.title}}</a></h2>
<span><i>{{item.keywords}}</i></span>
<section class="article-content markdown-body">
<blockquote>
<p>{{item.desci}}</p>
</blockquote>
......
</section>
<footer>
<a href="article?id=${article.id}">阅读全文</a>
</footer>
</article>
<!--分页条的占位-->
<zpagenav v-bind:page="page" v-bind:page-size="pageSize" v-bind:total="total" v-bind:max-page="maxPage" v-on:pagehandler="pageHandler"></zpagenav>
</div>
vue:
<script>
var vm=new Vue({
el:"#container",
data:{
articleList:[],
page:1, //显示的是哪一页
pageSize:5, //页面显示的数据条数
total:100, //总记录数
maxPage:9, //总页数
},
methods:{
//跳转到page页
pageHandler:function (page) {
this.page=page; //修改显示的页数page
var params={"pageNum":page,"pageSize":this.pageSize};
this.$http.post("/article/selectAll",params,{emulateJSON:true}).then(
function (res) {
this.articleList=res.data.list;
this.total=res.data.total;
this.maxPage=res.data.pages;
},
function (res) {
console.log(res);
}
)
}
},
created:function () {
this.pageHandler(1);
}
});
</script>

基于vue的分页插件的更多相关文章
- bootstrap-paginator基于bootstrap的分页插件
bootstrap-paginator基于bootstrap的分页插件 GitHub 官网地址:https://github.com/lyonlai/bootstrap-paginator 步骤 引包 ...
- 推荐几款基于vue的使用插件
1.muse-ui ★6042 - 三端样式一致的响应式 UI 库 2.vuetify ★11169 - 为移动而生的Vue JS 2组件框架 3.Vux ★12969- 基于Vue和WeUI的组件库 ...
- 一款基于jQuery的分页插件
特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...
- 基于Vue封装分页组件
使用Vue做双向绑定的时候,可能经常会用到分页功能 接下来我们来封装一个分页组件 先定义样式文件 pagination.css ul, li { margin: 0px; padding: 0px;} ...
- 基于bootstrap的分页插件
之前做的分页,是自己后端写一堆代码,返回给前端页面显示,感觉比较繁重.不灵活.今天研究下基于bootstrap的做的插件,整理如下: 在使用bootstrap的插件的时候,需要导入一些css.js. ...
- 基于jquery 的分页插件,前端实现假分页效果
上次分享了一款jquery插件,现在依旧分享这个插件,不过上一次分享主要是用于regular框件,且每一页数据都是从后端获取过来的,这一次的分享主要是讲一次性获取完数据 然后手动进行分页.此需求基本上 ...
- 自编基于jQuery实现分页插件
$(function(){ }); /** * @params dataUrl:请求数据url地址 * @params countUrl:请求数据总数url地址 * @params pageSize: ...
- 基于vue的cropper插件编写分享
目录 简介 实现功能 实现原理 github地址:https://github.com/yinzhida/vue-crop git clone: https://github.com/yinzhida ...
- 基于VUE2.0的分页插件(很好用,很简单)
基于jQuery的分页插件很多,今天分享一下基于Vue的分页插件pagination.js,该插件使用用感觉很不错,简单不复杂,现将个人使用过程中的方法与遇到的问题以及实例分享出来. 下载解压的主要目 ...
随机推荐
- SQL进阶-行转列&列转行
一.行转列 1.建表 CREATE TABLE score( student_id ) NOT NULL COMMENT '学生编号' DEFAULT '', student_name ) NOT N ...
- cv2 的用法
转载:https://www.cnblogs.com/shizhengwen/p/8719062.html 一.读入图像 使用函数cv2.imread(filepath,flags)读入一副图片 fi ...
- SpringBoot(十五):SpringBoot2.x集成eureka实现注高可用册中心,高可用的服务器提供者,以及消费者示例
本文代码请参考<https://github.com/478632418/springcloud-eureka-server-client/tree/master/mall>.<ht ...
- pm2使用 node 进程管理
1.问题 使用阿里云服务器时遇到一个问题,就是只能开一个命令窗口,加入运行node服务,只能起一个服务,不能启多个服务.pm2可以解决这个问题. 2.pm2简介 官网:https://pm2.keym ...
- OpenCV2 与opencv3 问题解决
本文链接:https://blog.csdn.net/ling_xiobai/article/details/79691785今天使用opencv运行一个脚本,但是出现cv2.cv.BoxPoints ...
- pymysql装饰器封装
pymysql装饰器封装 def openClose(fun): def run(sql=None): coon =pymysql.connect(host='localhost' ,port=330 ...
- Spring 事务小结
@Override@Transactionalpublic void add() { this.in();} public void in(){ NyOrder nyOrder=new NyOrder ...
- APP测试要点整理
APP测试基本流程以及APP测试要点https://www.cnblogs.com/dengqing9393/p/6497068.html 性能测试:https://blog.csdn.net/xia ...
- tp使用ajaxReturn返回二维数组格式的字符串,前台如何获取非乱码
参考: https://www.cnblogs.com/jiqing9006/p/5000849.html https://blog.csdn.net/zengxiangxuan123456/arti ...
- 【GMT43智能液晶模块】例程二十二:USB_HID实验——双向数据传输
源代码下载链接: 链接:https://pan.baidu.com/s/1iSAUQnHoLI3WRPm-DimeSA 提取码:69vp 复制这段内容后打开百度网盘手机App,操作更方便哦 GMT43 ...