Vuex — Как получить доступ к различным объектам состояния с помощью одной мутации / действия обновления?

#javascript #vue.js #object #state #vuex

#javascript #vue.js #объект #состояние #vuex

Вопрос:

У меня есть куча объектов с разными строками внутри этих объектов, которые я пытаюсь обновить с помощью всего одной мутации и действия. В настоящее время я пытаюсь отправить строку, получив значение и имя поля ввода и используя имя в качестве свойства объекта для динамического изменения состояния, но я не могу понять, как получить доступ к правильному свойству объекта, зависящему от строки входного имени.

Вот мой текущий код,

store.js

 info: {
   fullName: '',

}

....



mutations: {

   updateStateObject(state, object){
      state.info.object["name"]
   }

actions: {
   updateStateObject(store, object){
      store.commit('updateStateObject', object);
}
 

info.vue

 updateStateObject(e){
    this.$store.dispatch(this.store '/updateStateObject', {name: e.target.name, value: e.target.value)}
 

Если я установил вручную state.info.["inputFieldName"] = object.value , то он работает нормально, но я пытаюсь вызвать метод updateStateObject из файла vue из всех моих полей ввода, а затем получить доступ к правильному полю свойств в объекте состояния в зависимости от имени поля ввода … как я могу этого добиться?

Ответ №1:

Если я правильно понимаю, name value включен ключ and object . Если это так, вы бы сделали это:

 updateStateObject(state, object){
   state.info[object.name] = object.value;
}