Vue解决双向绑定引起数据同步变化的问题

起因是创建Modal编辑Table中的某个条目,Modal的数据直接引用对应TableData索引处的值,当我在Modal中修改数据时,神奇的是Table里的数据也跟着变了,关键是Modal关闭了之后,Table的数据也不会恢复(除非刷新),一想大概是双向绑定引起的问题

原先的写法很简单:

click: () => {  
  this.modalObject = this.tableData[params.index];  
  this.modalDisplay = true;
}

解决办法就是用JSON.parse/stringify兜一圈,生成临时变量干掉双向绑定:

click: () => {  
  this.modalObject = JSON.parse(JSON.stringify(this.tableData[params.index]));  
  this.modalDisplay = true;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。