vue异步分页+初始化页面
html代码:
<section class="container page-home"><div id="main-content" class="wrap-container zerogrid"><article id="news_content" v-for="item in items"><div class="col-1-2 right"><img :src="item.coverimage" class="news_image"/><!-- :要与img标签之间有空格 --></div><div class="col-1-2 left"><a class="art-category left" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >{{item.releasetime.substring(0,19)}}</a><div class="clear"></div><div class="art-content"><h2>{{item.title}}</h2><div class="info"><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >{{item.author}}</a></div><div class="line"></div><p>{{item.remark}}</p><a v-bind:href="['/island/stage/newscontent.html?id='+item.id+'&categoryid='+item.categoryid]" rel="external nofollow" class="more">阅读全文</a><span href="javascript:;" rel="external nofollow" class="more" style="margin-left:50px;">浏览量 : {{item.reading}}</span></div></div></article><!-- 循环结束(新闻) --></div><div id="pagination" class="clearfix"><ul><li v-for="page in pages"><a class="current" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" v-if="currentPage == page">{{page}}</a><!-- 高亮显示当前页 --><a class="choose_page" v-if="currentPage != page" @click="clickpage">{{page}}</a></li><li v-if="pages > 1"><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >next</a></li></ul></div></section>/查询相关新闻种类下的所有新闻记录var vm = new Vue({ el: '.page-home',//需要注入的模板的父元素 data: { items : [], pages : [], currentPage : [] }, //end data created:function(){ $.post("/island/stage/queryOneCategoryAllNews.do",{"categoryid":parseInt(categoryid),"currentPage":1},function(data){ vm.pages = data.totalPage;//总页码 vm.items = data.list;//循环内容 vm.currentPage = data.currentPage;//当前页(添加高亮样式) });//end post }, //created methods:{ clickpage:function(event){ var currentPage = $(event.currentTarget).text(); $.post("/island/stage/queryOneCategoryAllNews.do",{"categoryid":parseInt(categoryid),"currentPage":parseInt(currentPage)},function(data){ vm.items = data.list;//循环内容 vm.pages = data.totalPage;//总页码 vm.currentPage = data.currentPage;//当前页(添加高亮样式)}); //end post } //end method } }); //end vuepackage com.zrq.util;import java.util.List;import org.springframework.stereotype.Component;@Componentpublic class PageUtil {/** // 默认的每页记录数量(10条) private static final int DEFAULT_PAGE_SIZE = 10; //* 默认当前页 private static final int DEFAULT_CURRENT_PAGE = 1;*/// 1.每页显示数量(everyPage)private int everyPage;// 2.总记录数(totalCount)private long totalCount;// 3.总页数private long totalPage;// 4.当前页(currentPage)private int currentPage;// 5.起始下标(beginIndex)private int beginIndex;// 6.判断是否有上一页private boolean next;// 7.判断是否有下一页private boolean previous;// 8.返回列表private List list;/* 获取总页数 */public long getTotalPage() {long remainder = totalCount % this.getEveryPage(); // 剩余数if (remainder == 0)totalPage = totalCount / this.getEveryPage();elsetotalPage = totalCount / this.getEveryPage() + 1;return totalPage;}/* 判断是否有上一页 */public void hasPrevious() {if (currentPage > 1)this.setPrevious(true);elsethis.setPrevious(false);}/* 判断是否有下一页 */public void hasNext() {if (currentPage < this.getTotalCount())this.setNext(true);elsethis.setNext(false);}public boolean isNext() {return next;}public boolean isPrevious() {return previous;}public void setTotalPage(long totalPage) {this.totalPage = totalPage;}public void setNext(boolean next) {this.next = next;}public void setPrevious(boolean previous) {this.previous = previous;}public int getEveryPage() {return everyPage;}public long getTotalCount() {return totalCount;}public int getCurrentPage() {return currentPage;}public int getBeginIndex() {return beginIndex;}public List getList() {return list;}public void setEveryPage(int everyPage) {this.everyPage = everyPage;}public void setTotalCount(long totalCount) {this.totalCount = totalCount;}public void setCurrentPage(int currentPage) {this.currentPage = currentPage;}public void setBeginIndex(int beginIndex) {this.beginIndex = beginIndex;}public void setList(List list) {this.list = list;}public PageUtil(int currentPage, int pageSize) {this.currentPage = currentPage;this.everyPage = pageSize;}public PageUtil() {/** this.currentPage = DEFAULT_CURRENT_PAGE; this.everyPage =* DEFAULT_PAGE_SIZE;*/}public PageUtil(int everyPage, int totalCount, int currentPage,int beginIndex, List list) {super();this.everyPage = everyPage;this.totalCount = totalCount;this.currentPage = currentPage;this.beginIndex = beginIndex;this.list = list;}}vue异步分页+初始化页面的更多相关文章
- Spring+Mybatis+jQuery.Pagination.js异步分页及JsonConfig的使用
在开发工作中经常用到异步分页,这里简单整理一下资料. 一.Controller方法 package com.lwj.controller; import javax.servlet.http.Http ...
- jQuery+Ajax+PHP实现异步分页数据显示
这几天做毕业设计的时候需要使用到一个异步分页的功能,即翻页的时候只是刷新分页的数据而不是刷新整个页面.因为之前做项目的时候没有做过这方面的功能,所以还是纠结了挺长时间的,在网上也找了很多资料,结合自己 ...
- 基于layerpage 前后端异步分页
#下载jquery 和 layerpage1.核心分页方法 laypage({ cont: 'page1', //容器.值支持id名.原生dom对象,jquery对象. pages: json.tot ...
- jQuery异步分页插件
学校软件工程让写课程设计(其实就是自选语言做个项目),感觉都是重复的东西就没有很认真的去写内容,更加注意写一些之前没有用过的东西. 因为一直都使用TP框架来写PHP,TP又自带分页类,想到这里就想试试 ...
- 项目开发之分页---异步分页(ajax)
PS:前面忘了给大家讲解后台需要做的 ,同步分页的时候,我们只需要定义一个方法,给前台传递一个page对象,前台接收到直接展示即可:异步分页要多一步,首先还是写一个方法,传递初始对象,后面的ajax返 ...
- 5.Hibernate实现全套增删改查和ajax异步分页
1.1 创建如下oracle数据库脚本 drop sequence seq_stu; create sequence SEQ_STU minvalue maxvalue start increment ...
- Java快速开发平台强大的代码生成器,JEECG 3.7.5 VUE+ElementUI SPA单页面应用版本发布
JEECG 3.7.5 VUE+ElementUI SPA单页面应用版本发布 此版本为Vue+ElementUI SPA单页面应用版本,提供新一代风格代码生成器模板,采用Vue技术,提供两套精美模板E ...
- JS(vue iview)分页解决方案
JS(vue iview)分页解决方案 一.解决思路 使用分页组件 使用组件API使组件自动生成页面数量 调用组件on-change事件的返回值page 将交互获得的数组存在一个数组list中 通过p ...
- 每天记录一点:NetCore获得配置文件 appsettings.json vue-router页面传值及接收值 详解webpack + vue + node 打造单页面(入门篇) 30分钟手把手教你学webpack实战 vue.js+webpack模块管理及组件开发
每天记录一点:NetCore获得配置文件 appsettings.json 用NetCore做项目如果用EF ORM在网上有很多的配置连接字符串,读取以及使用方法 由于很多朋友用的其他ORM如S ...
随机推荐
- Apollo2.5 CANBUS调试笔记(测试版)
前言:CANBUS是Apollo需要根据你的底盘写代码的地方,感觉也是Apollo最难调试的部分.这部分首先要选好CAN卡,因为不是Apollo推荐的CAN卡,驱动程序和对应接口,可能都需要自己调整, ...
- 后台npm
后台进程运行 nohupwhich nohup.bash_profile中并source加载 如果没有就安装吧yum provides */nohup nohup npm start &原程序 ...
- HomeKit 开发指南(中文版)
转载自cocoachina 本文由CocoaChina翻译组成员iBenjamin_Go和浅夏@旧时光翻译自苹果开发文档:HomeKit Developer Guide,敬请勘误. 本文档内容包括 第 ...
- Java中23种设计模式(附代码样例)
一.设计模式分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式.结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组 ...
- #leetcode刷题之路30-串联所有单词的子串
给定一个字符串 s 和一些长度相同的单词 words.找出 s 中恰好可以由 words 中所有单词串联形成的子串的起始位置.注意子串要与 words 中的单词完全匹配,中间不能有其他字符,但不需要考 ...
- lrzsz Linux服务器Windows互传文件工具
lrzsz是一款在linux里可代替ftp上传和下载的程序,但只限于较小的文件,如果是目录需要打包成单个文件在实现下载. 条件:需要使用SecureCRT或者Xshell等客户端工具连接Linux 下 ...
- 使用babel插件集
1).打开配置文件".babelrc",配置插件集,代码如下: { "presets":["latest"] } 2).安装babel插件集 ...
- 使用babel
1).Babel支持NPM包形式的安装,打开命令行窗口,切换到项目根目录,命令如下 npm install babel-cli 2).安装成功后,在package.json文件里添加如下代码 &quo ...
- 将Vue插件发布到npm的完整记录
前言 面对越来越多的组件库,越开越多的ui库,学会发布库已经是前端必须会的事情了,也算是为开源贡献一份力量,在网络上看了一些前者的文章,也算的发布成功了,虽然还存在很多问题,路不积跬步,无以至千里 ...
- redis、Memcached、MongoDb使用心得
最近在思考数据库以及缓存的问题,发现这些知识点其实是有一点关联的,于是这篇文章通过一个连环提问的方式将这些知识点串联起来. 问:为什么要用 Memcached.Redis,直接用 MySQL 这些数据 ...