vue重置data
分类:vue
没有爱情,可千万不要结婚——奥斯汀
场景:需要重置已经更改后的data
官方文档:
https://v2.cn.vuejs.org/v2/api/#data
其中提到可以通过调用data
函数得到一个全新的副本对象

https://v2.cn.vuejs.org/v2/api/#vm-options
然后我们可以通过$options
获取用于当前 Vue 实例的初始化选项,因此通过
this.$options.data()
能够得到最初定义data
的一个全新的副本对象(这里的this
指向vue
实例)
再使用Object.assign
Object.assign(this.$data, this.$options.data())
即可重置data
在某些情况下,this.$options.data()
的this
指向有问题,可以使用
Function.prototype.call()
处理
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Function/call
例如
Object.assign(this.$data, this.$options.data.call(this))
一线大厂高级前端编写,前端初中阶面试题,帮助初学者应聘,需要联系微信:javadudu