vue数据更新table内容不更新解决方法

场景:

table组件绑定的数据变化时,页面没有重新渲染,常见于子组件中使用table组件

原理:

创建实例时 数组在vue中没有被监听到,属于非响应式数据,数组的下标变化无法监听到

解决方式:

js 复制代码
    <el-table
          :key="tamptime"
          stripe
          border
          fit
          height="450"
          :data="tabledata"
          style="width: 100%"
        >
          <el-table-column
            v-for="i in pretabledatacolumn"
            :key="i.index"
            show-overflow-tooltip
            :prop="i"
            :label="i"
            width="230"
          />
        </el-table>

data(){
    return {
        tabledata:[],
        pretabledatacolumn:[],
        tamptime:new Date().valueOf()
    }
}
methods:{
	changeTableData(){
		this.tabledata = []
	}
}

1、利用vue中重写的数组方法

splice,split,concat...

js 复制代码
changeTableData(){
	this.tabledata.splice(1,0)
}

2、为table绑定一个key,数据变化时更改key值,或者使用v-if绑定一个不重复的值触发组件渲染

js 复制代码
changeTableData(){
		this.tamptime = new Date().valueOf()
		this.tabledata = newtabledata
	}

3、使用$set()

js 复制代码
changeTableData(){
	this.$set(tabledata,1,'newvalue')
	}
相关推荐
TT哇2 分钟前
【实习】数字营销系统 银行经理端(interact_bank)前端 Vue 移动端页面的 UI 重构与优化
java·前端·vue.js·ui
蓝帆傲亦3 分钟前
Web前端跨浏览器兼容性完全指南:构建无缝用户体验的最佳实践
前端
晴殇i7 分钟前
【前端缓存】localStorage 是同步还是异步的?为什么?
前端·面试
不一样的少年_9 分钟前
Chrome 插件实战:如何实现“杀不死”的可靠数据上报?
前端·javascript·监控
深度涌现9 分钟前
DNS详解——域名是如何解析的
前端
小码哥_常11 分钟前
Android内存泄漏:成因剖析与高效排查实战指南
前端
卤代烃12 分钟前
✨ 形势比人强,Chrome 大佬也去搞 Gemini 了
前端·agent·vibecoding
偶像佳沛13 分钟前
JS 对象
前端·javascript
Jing_Rainbow22 分钟前
【React-6/Lesson89(2025-12-27)】React Context 详解:跨层级组件通信的最佳实践📚
前端·react.js·前端框架
gustt23 分钟前
构建全栈AI应用:集成Ollama开源大模型
前端·后端·ollama