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 vue
package com.zrq.util;
import java.util.List;
import org.springframework.stereotype.Component;
@Component
public 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();
else
totalPage = totalCount / this.getEveryPage() + 1;
return totalPage;
}
/* 判断是否有上一页 */
public void hasPrevious() {
if (currentPage > 1)
this.setPrevious(true);
else
this.setPrevious(false);
}
/* 判断是否有下一页 */
public void hasNext() {
if (currentPage < this.getTotalCount())
this.setNext(true);
else
this.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 ...
随机推荐
- Dubbo实践(七)扩展点
与JDK的SPI机制类似,Dubbo也在META-INF路径下定义了多种扩展接口.只是JDK SPI机制是Java后台帮你实现读取文件并对接具体的实现类,而Dubbo是自己去读文件. 扩展点配置 扩展 ...
- IntelliJ IDEA更改字体和大小
更换了IntelliJ IDEA后,第一件事就是就是想要更改字体. IntelliJ IDEA的字体设置分为两部分:一部分是UI的字体和字号设置,另一部分是编辑区的字体和字号设置. UI字体的更改入口 ...
- spring框架中beans.xml文件报错XmlBeanDefinitionStoreException
第一次构建spring,实现简单的注入方式,就发生了beans.xml文件报错,报错信息如下图 org.springframework.beans.factory.xml.XmlBeanDefinit ...
- 【Step By Step】将Dotnet Core部署到Docker下
一.使用.Net Core构建WebAPI并访问Docker中的Mysql数据库 这个的过程大概与我之前的文章<尝试.Net Core—使用.Net Core + Entity FrameWor ...
- 简单的 Android 菜单
Android 创建简单的菜单 一:上下文菜单: 1.在 res 下创建菜单项资源文夹 menu app->右击res->new->android resourse director ...
- 【Linux】文件、目录权限及归属
访问权限: 可读(read):允许查看文件内容.显示目录列表 可写(write):允许修改文件内容,允许在目录中新建.移动.删除文件或子目录 可执行(execute):允许运行程序.切换目录 归属: ...
- ASP.net 加载不了字体Failed to load resource: the server responded with a status of 404 (Not Found)
在bootstrap下加载不了字体内容.出现下列错误. 1.打开IIS找到部署的网站,点击MIME类型,把.woff和.woff2两个类型分别添加到新类型中,重启网站即可.
- less的在线安装
首先打开命令行窗口windonws+r输入cmd回车 1.确认是安装了node和less,在命令行输入“node -v”回车确认node是否安装,有版本信息则安装了,输入“lessc -v”回车确认l ...
- Node调试
之前调试node代码简单粗暴,直接在代码打印日志,控制台观察日志,效率低下~ 原来后端node代码也可以通过Chrome断点调试,以下是调试方法. (1)找到node启动的进程 ps aux|grep ...
- 遍历collection是否会出现重复遍历?
在处理一次线上问题时,需要遍历一张玩家信息表,看单个account是否存在多个entity.使用aid_playerid_dict建立aid到playerid的映射,遍历过程中,发现同一个aid会出现 ...