我有一个可以修改标题的表格。如果单击重置按钮,则该值应重置。但是,由于我的头条来自vuex,因此initTitle也将受到影响。
data() {
return this.$store.getters[this.view];
},
initTitle() {
return this.data.name;
},
title: {
get() {
return this.data.name;
},
set(title) {
const target = this.view;
this.$store.commit('update', { prop: 'name', value: title, target, id });
}
}
如何破坏initTitel上的绑定?
我尝试过
Object.freeze(this.data.name);
Object.assign({}, this.data.name);
//inside methods
methods: {
initTitle() {
return this.title;
},
此屏幕快照显示,如果我编辑输入字段,则两者都会更新
我找到了解决问题的方法
在我的模板中,我删除了双向绑定 v-model ,并替换为:value
<input type="text" :name="'title'" :value="title" class="textfield --headline" ref="newHeadline">
所以我的vuex没有任何更新。
如果我点击保存按钮,我将从引用中获取值并将其提交给我的商店
const title = this.$refs.newHeadline.value;
this.$store.commit('update', { prop: 'name', value: title, id, target });
如果单击重置按钮,则可以用商店中的值替换标题。