vue ajax 组件,Vue.js中ajax请求代码应该写在组件的methods中还是vuex的actions中?

我是这样认为的,首先,你要考虑清楚这个异步请求你要是 全局公用呢还是 单个组件私有呢?

如果是公用,还是写在 vuex 的actions 当中为妙,而私有 则 写在methods中。

实际上我是这样做的,公有数据 state ,而私有方法。

意思就是直接 不用 actions, 请求全部放在 组件methods 当中,更新数据的话也不通过 actions 这一环节,直接通过method 调用 mutation。 这样就可以把vuex 分为三个部分, state,setter,getter, 风别是 数据,写操作,读操作。 这样的话 我觉得逻辑清楚一点。

而如果把 method 写到 actions 中,第一个,在写组件的时候不是太方便,使得 vue组件严重依赖 store。再一个,写着太麻烦,例如,我就随便改一个数据的值,而我又不想使用mapActions 将所有方法写到store中,那我就得先调用 …mapAction,然后通过action 将数据提交到 mutation,再通过 mutation 来改state,流程是在是太长了。而省略掉 action后,只需要在方法中 …mapMutation 就直接改好 state,方便快捷。

而且到目前为止,我还没有发现那个方法需要写进 actions 呢,全局只要 数据 流通就够了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值