简单说下使用场景,你使用一个dialog组件,弹窗时要加载数据,关闭后要清理数据,以防下次使用报错或者数据残留,如果在data中写了过多的属性,或者层级很深的引用对象啥的,为了方便还原,你可能会一个个的写。

onClose() {
  this.xxx = xxx;
  this.xxx.xxx = xxx;
  this.xxx.xxx = xxx;
  this.xxx.xxx = xxx;
}

对多个值进行赋值操作。

但是,这样实在是太难了,有没有一种简单的方法,就像表单重置一样。

答案当然是有的:

onClose() {
  Object.assign(this.$data, this.$options.data());
}

使用该方法,可以将data里的所有数据重置为默认初始值。

this.$data获取的是当前data对象

this.$options.data()获取的是该组件初始状态下的data

如果想还原某一个指定属性,可以单独设置

onClose() {
  this.xxx = this.$options.data().xxx;
}
分类: vue 项目实战 标签: datavue重置

评论

暂无评论数据

暂无评论数据

目录