У меня есть форма, где я могу редактировать заголовок.Если я нажму кнопку сброса, значение должно сброситься.Однако, поскольку мой заголовок исходит от 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-модель и заменил ее на : значение
<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 });
Если я нажму кнопку сброса, я могу заменитьзаголовок со значением из магазина.