1.改變對象的某個(gè)屬性值
this.tableData是一個(gè)數(shù)組,this.tableData[index]是一個(gè)對象.如果直接修改:
this.tableData[index].editable = true
用上面的方法改變對象的一個(gè)屬性editable,打印發(fā)現(xiàn)值已經(jīng)改變了,但是視圖并沒有渲染出來,應(yīng)該用:
this.$set(this.tableData[index], 'editable', true)
// this.$set(要改變的對象, '屬性名', 屬性值)
2.改變數(shù)組的某一項(xiàng)
this.tableData是一個(gè)數(shù)組,this.tableObj是一個(gè)對象.如果直接改變數(shù)組的某一項(xiàng):
this.tableData[index] = this.tableObj
也是視圖層不會渲染出來.用下面兩種方法都可:
this.$set(this.tableData, index, this.tableObj)
this.tableData.splice(index, 1, this.tableObj)
深拷貝:
this.tableObj = JSON.parse(JSON.stringify(row))