在数据对象中增加新的属性值,数据更新,视图不更新问题

一、原始数据

javascript 复制代码
dataTable:[
  {'aa':'111'}
]

然后我需要再给他一个对象属性值,就会发现打印出来的数据是更新了,视图不更新,原因是在于在Vue实例创建时, dataTable.bb 并未声明,因此就没有被Vue转换为响应式的属性.

javascript 复制代码
this.dataTable[0].bb='123'

二、解决方法

1、在刚开始请求tableData数据的方法中,先给它声明一下变量bb,可采用以下方法

javascript 复制代码
 var that=this;
 this.tableData.forEach(function(item) {
	 that.$set(item,'bb',null)
 })

2、然后在改变数组对象的属性的时候

javascript 复制代码
modify(row, index){
	 this.$set(row,'bb','12312')
	 this.$set(this.tableData, index, row);
	 console.log(this.tableData,row,index);
}
相关推荐
乐闻x6 分钟前
最佳实践:如何在 Vue.js 项目中使用 Jest 进行单元测试
前端·vue.js·单元测试
遇到困难睡大觉哈哈17 分钟前
JavaScript面向对象
开发语言·javascript·ecmascript
檀越剑指大厂20 分钟前
【Python系列】异步 Web 服务器
服务器·前端·python
我是Superman丶22 分钟前
【前端】js vue 屏蔽BackSpace键删除键导致页面后退的方法
开发语言·前端·javascript
Hello Dam23 分钟前
基于 Spring Boot 实现图片的服务器本地存储及前端回显
服务器·前端·spring boot
小仓桑25 分钟前
利用 Vue 组合式 API 与 requestAnimationFrame 优化大量元素渲染
前端·javascript·vue.js
Hacker_xingchen25 分钟前
Web 学习笔记 - 网络安全
前端·笔记·学习
天海奈奈26 分钟前
前端应用界面的展示与优化(记录)
前端
多多*1 小时前
后端并发编程操作简述 Java高并发程序设计 六类并发容器 七种线程池 四种阻塞队列
java·开发语言·前端·数据结构·算法·状态模式
ᥬ 小月亮1 小时前
Layui表格的分页下拉框新增“全部”选项
android·javascript·layui