element-ui绑定的current-page失效

本文探讨了Element UI中el-pagination的currentPage绑定失效现象,当数据加载前清空列表和total导致其值重置为1的问题。提供了两种解决方案,包括在获取数据后更新currentPage和避免预先清空数据。

element-ui绑定的current-page失效

描述:element-ui": "^2.12.0,el-pagination绑定current-page,点击分页(除第一页)后,获取到数据之后current-page绑定值自动变为1。
原因:每次获取数据之前先设置了数据列表为空,total绑定值为0,这时current-page绑定值如果大于1,则会自动变为1。如下:

// html
<el-pagination
  :current-page.sync="page.pageNum"
  :page-size="page.pageSize"
  @current-change.sync="getData"
  :total="page.total"
  ></el-pagination>

// js
getData () {
	this.page.total = 0
	this.list = []
	axios.getData(this.page).then(res => {
		this.list = res.data.data
		this.page.total = res.data.total
	})
}

解决:

  1. 方法一:@current-change会传当前点击的分页值,可以传给this.page.pageNum
getData (page = 1) {
	this.page.total = 0
	this.list = []
	axios.getData(this.page).then(res => {
		this.page.pageNum = page // 获取数据后重新为pageNum赋值
		this.list = res.data.data
		this.page.total = res.data.total
	})
}
  1. 方法二:获取数据之前不要清空数据
getData () {
	// this.page.total = 0
	// this.list = []
	axios.getData(this.page).then(res => {
		this.list = res.data.data
		this.page.total = res.data.total
	})
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值