element table中的内嵌组件不能自动更新
2020-06-24 本文已影响0人
晨曦_c2fd
1、如果没有将table二次封装:
声明一个key属性值为随机数即可
<el-table
:data="data"
:key="Math.random()" <!--增加key属性即可-->
ref="classTimeTable"
></el-table>
2、已将table二次封装
如果你已经将table二次封装,而且还将key赋值为随机数,vue会报错,提示你可能循环引用,这时则需要在更新数据前将key赋为一个随机数即可
<el-table
:data="classTimeList"
:key="randomString"
ref="classTimeTable"
></el-table>
*******
export default {
name: 'classtableCon',
data() {
return {
randomString: ""
};
}
*******
this.$request({
method: "get",
url: "/xxx",
}).then(res => {
if (res.code == 200) {
this.randomString = new Date().toString()
this.classTimeList= res.data
}
});
总结:
推荐使用最后一种方式,虽然多了个变量但是没有任何问题。