vuex中的表单处理

本文探讨了在Vuex严格模式下处理表单时遇到的问题。当试图直接修改Vuex store中的状态时,需要通过commit进行mutation。提出了两种解决方案:1. 通过事件处理,利用input事件触发mutation更新状态;2. 使用双向绑定计算属性,使得message变化时自动提交mutations。这两种方法旨在在保持状态管理规范的同时,简化表单操作流程。
摘要由CSDN通过智能技术生成

首先简单的介绍一下vuex。

vuex的核心就是store仓库,里面管理着我们的状态, 我们在编写vue程序的时候,状态管理很重要。举个例子:比如我们都知道,加载有个加载的圈在那儿转,等到数据请求完成了,也就消失了,这个东西的写法我们就可以用到状态管理。首先状态值为0,向后端发一个请求,就状态值加1,返回一个请求就状态字减1,等到状态为0的时候,就消失这个加载圈。记住核心是状态,其它的mutation等等都是为了去合理的操作这个状态而生。

回到本文的重点,vuex的表单处理。

问题:

使用vuex严格模式的时候,在属于 Vuex 的 state 上使用 v-model 会比较棘手:

<input v-model="obj.message" />

如果这个obj是一个vuex store对象,那么这样就会出现问题。

你不能直接改变 store 中的状态。改变 store 中的状态的唯一途径就是显式地提交 (commit) mutation

 由于上面的规定,所以我们这里的操作相当于直接操作了。

解决:

1、通过事件来处理

<input :value="message" @input="updateMessage">

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值