请问该节教程中,为什么不直接使用 mutations 中的方法,而是使用 actions 中的方法?

问答 soypablo ⋅ 于 2个月前 ⋅ 最后回复由 Ryun 2个月前 ⋅ 2815 阅读

请问mutations中写个方法不就够用了吗,为什么要饶个圈圈使用actions中的方法??

UPDATE_USER(state, user) {
    state.user = user
    ls.setItem('user', user)
  }

改造一下

  UPDATE_USER(state, user) {
    if (user){
     state.user = user;
     ls.setItem('user', user);
    }
    router.push('/');
  }

让然后用store.commit('UPDATE_USER', user)调用,不就行了吗?绕个大圈圈使用actions中的方法,有啥好处?

本文章首发在 Vuejs 知识社区
成为第一个点赞的人吧 :bowtie:
最佳答案
  • 不在 mutationsUPDATE_USER 中添加登录的逻辑,是因为我们希望 mutations 里的逻辑能够保持清晰简洁,且实际案例中,登录的操作很可能发起一个异步请求,所以我们在 actions 里处理。

    2个月前 2
回复数量: 1
  • 不在 mutationsUPDATE_USER 中添加登录的逻辑,是因为我们希望 mutations 里的逻辑能够保持清晰简洁,且实际案例中,登录的操作很可能发起一个异步请求,所以我们在 actions 里处理。

    2个月前 2
您需要登陆以后才能留下评论!

Vue.js 官方中文文档

前端开发环境部署