使用elementUI分页实现切换页面时返回页面顶部
原理
给elementUI分页组件的切换页面时触发事件(在这里就是handleCurrentChange函数)添加一个跳转到页顶的方法即可。
实现
<!-- 分页组件 --> <el-pagination @current-change="handleCurrentChange" > </el-pagination>
//跳到页顶
scrollTop(selector) {
let element = selector && document.querySelector(selector) || window;
element.scrollTo(0, 0);
},
handleCurrentChange(val) {
...
this.scrollTop()
}element-ui分页el-pagination的坑
1.所有的信息都必须的动态的
<el-pagination class="pull-right clearfix" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page.sync="pageNo" :page-sizes="pageSizesList" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="totalDataNumber"> </el-pagination>
2.数据在data里面
pageNo: 1, pageSize: 10, pageSizesList: [10, 15, 20, 30, 50], tableData: [],//返回的结果集合 totalDataNumber: 0,//数据的总数,
3.这是重中之重,认真我的认证
this.$http({
method: 'POST',
url: '/api/Acs/QueryAccessLog',
data: requestData
}).then(function (resp) {
console.log(resp);
if (resp.data.Data.Result.length > 0) {
likeThis.tableData = resp.data.Data.Result;
likeThis.totalDataNumber = resp.data.Data.Total;
likeThis.listLoading=false;
} else {
likeThis.tableData = [];
likeThis.totalDataNumber = 0;
}
})//改变每页显示数量
handleSizeChange(val){
var likeThis=this;
var pageSize = `${val}`;
this.pageNo=1
this.pageSize= parseInt(pageSize);
console.log('pageSize: ' pageSize);
this.$nextTick(() =>
this.getAndDraw(1,pageSize,function (resp) {
likeThis.totalDataNumber = resp.data.Data.Total;
})
)
}, //改变页码
handleCurrentChange(val){
var pageSize=this.pageSize;
// this.pageNo=pageNo;
console.log('pageSize:' this.pageSize)
this.getAndDraw(parseInt(pageNo),parseInt(pageSize));
},以上为个人经验,希望能给大家一个参考,也希望大家多多支持Devmax。