我在SO上经历了这个答案:是否有正确的方法在vuejs中重置组件的初始数据?
但是,当前不允许使用当前方法,并且VueJS禁止更改$ data var。
如您在此https://github.com/vuejs/vue/issues/2873所见(不允许修改$ data。)
因此,如果尝试上述方法,则会收到VueJS警告:
[Vue警告]:避免替换实例根$ data。请改用嵌套数据属性。
这是我的JS代码,
function initialState () {
return {
h2: 0,
ch4: 0,
c2h6: 0,
c2h4: 0,
c2h2: 0,
c3h8: 0,
c3h6: 0,
co: 0,
co2: 0,
o2: 0,
n2: 0,
selected: ''
}
}
export default {
name: 'something',
data () {
return initialState() // This is working fine
},
computed: {
tdcg: function () {
// some logic here...
}
},
methods: {
resetFields: function () {
this.$data = initialState() // --> This is what I want to achieve!
}
}
}
那么重新初始化数据的正确和最简单的方法是什么?
您可以尝试以下方法: