Я понял, что вы можете передавать функции хранилища мутаций в события HTML, например:
//In the template
<input name="the_field" :value="the_field" @input="updateField"/>
// In the component
methods: {
...mapMutations(["updateField"])
}
// In the store
state: {
the_field: "a value"
},
mutators: {
updateField (state, e) {
state[e.target.name] = e.target.value;
}
}
Так что, просто передав событие в качестве полезной нагрузки, я могу получить функцию обновления общего поля для определенной области,при условии, что имя установлено.
Чтение документов и то, о чем говорят люди, использует this.$scope.commit("function_name", body)
, даже для обновления полей из ввода.В этом примере мне нужно написать метод компонента, который выполняет этот вызов, возможно, выбирает конкретные данные, такие как this.$scope.commit("updateField", {name: e.target.name, value: e.target.value})
.Это проблема производительности, чтобы обойти объект события?И что более важно, можно ли вызывать функцию мутации напрямую вместо использования $store.commit
?