最近在做列表首页时,根据条件切换当前table,但是数据更新后,页面不刷新问题
尝试了几种方法,还是没效果

 1. 在nextTick中使用this.$refs.table.doLayout()
 2. 在data赋值前清空tableData
 3. 强制刷新:this.$forceUpdate()

后面在blog中看到某位大佬的方法,给table加个key,页面就能更新了,所以Mark下

<el-table
    ref="table"
    :data="tableData"
    :key="itemKey"
></el-table>


// 在tableData赋值的地方,顺便随机设置下key,页面就会刷新了
this.itemKey = Math.random()

总结:设置key这种,就像路由不重新加载的解决方法一样,也是在router-view上加key来强制刷新,所以类似很多组件不刷新的问题,加个key应该都能重新渲染试图

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐