问题:vue2+elementui,tabs切换显示表格并设置表格选中行高亮失败

错误示范:

1.直接setCurrentRow失败(this.currentRow是之前保存的表格当前选中行的数据)

javascript 复制代码
this.$refs.table.setCurrentRow(this.currentRow);

2.以为是表格没生成就执行了setCurrentRow导致设置不成功,所以使用了this.$nextTick,依旧失败

javascript 复制代码
this.$nextTick(() => {
	this.$refs.table.setCurrentRow(this.currentRow);
});

最后解决:

好吧,最后发现问题出在setCurrentRow的参数上,不管你有没有改动表格数据,用你需要选中的行id,去遍历表格数据,遍历到item.id===id,则row =item,最后用this.$refs.table.setCurrentRow(row)可以解决。

完整代码如下:

javascript 复制代码
this.$nextTick(() => {
	let currentRow = this.tableData.filter(item => {
		return item.id === this.currentRowId;
	});
	console.log("有选中行", currentRow[0]);
	this.$refs.table.setCurrentRow(currentRow[0]);
});

这个nextTick因为写了就没去掉,不包可能也行吧。

这是之前参数的由来:

参考:

相关推荐
kite01213 小时前
浏览器工作原理06 [#]渲染流程(下):HTML、CSS和JavaScript是如何变成页面的
javascript·css·html
крон3 小时前
【Auto.js例程】华为备忘录导出到其他手机
开发语言·javascript·智能手机
coding随想5 小时前
JavaScript ES6 解构:优雅提取数据的艺术
前端·javascript·es6
年老体衰按不动键盘5 小时前
快速部署和启动Vue3项目
java·javascript·vue
小小小小宇5 小时前
一个小小的柯里化函数
前端
灵感__idea5 小时前
JavaScript高级程序设计(第5版):无处不在的集合
前端·javascript·程序员
小小小小宇5 小时前
前端双Token机制无感刷新
前端
小小小小宇5 小时前
重提React闭包陷阱
前端
小小小小宇5 小时前
前端XSS和CSRF以及CSP
前端
UFIT6 小时前
NoSQL之redis哨兵
java·前端·算法