vue 恢复数据为初始状态


某些时刻需要恢复vue数据到初始状态,但此时数据在程序运行过程中已经被修改,可以怎么做呢?

一、直接赋值(不推荐,若修改的地方多,冗余)

this.form = {要赋值的数据};

二、利用this.$options.data()获得原始数据,再利用Object.assign()进行赋值。this.$options指vue实例的初始化选项,选项内容包含官方api的6个方面。

1、对vue实例的data全部回复初始状态

Object.assign(this.$data,this.#options.data());

  this.$data获取当前状态的data,也就是要改变的data数据

2、恢复data的某一项数据

Object.assign(this.$data.form,this.#options.data().form);

3、在data中用this获取了props或者methods,此时this.#options.data()中的this指向变化,不能正确获取vue实例的初始状态,为undefined,此时应该使用

Object.assign(this.$data,this.$options.data.call(this));

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM