【发布时间】:2021-10-28 21:14:51
【问题描述】:
我正在尝试找到一种我可以使用的模式,它可以让我在输入时更新状态。我已经尝试了几种模式,包括官方文档中的 get set 方法,但我似乎无法得到任何工作。我可以使用 {{email}} 更改状态以显示在我的页面上,但在填写表格时不能相反。在这一点上,我会很感激任何解决方案。
<template>
<section>
<BaseInput placeholder="Email" type="text" :value="email" @input="updateEmail" />
</section>
</template>
<script>
import { mapState } from 'vuex'
export default {
components: {
BaseInput,
},
computed: {
...mapState({
email: (state) => state.email,
}),
},
methods: {
updateEmail(email) {
this.$store.commit('updateEmail', email)
},
},
}
</script>
index.js
export const state = () => ({
email: '',
})
export const mutations = {
updateEmail(state, payload) {
state.email = payload
},
}
【问题讨论】:
-
你能解释更多吗?你希望你的状态用你的输入来更新,反之亦然,你的输入用你的状态填充(更新),对吗?你试过
watch钩子吗?? -
什么不起作用?请检查您的 vue 开发工具。
标签: data-binding nuxt.js state vuex