vue如何在action中使用loading

在Vue中一般这样使用loading状态

getData(){
    this.loading = true;
    get(api).then(res => {
        this.data = res;
        this.loading = false;
    })
}

但在vuex的action中如何使用,下面例子使用了一个公共的loading发现不行,loading状态应该是局部的,那么如何在vuex中控制loading状态?

  const actions = {
  getProductInfo({commit}){
    commit(types.LOADING, true)
    api.xxx()
      .then(res => {
        commit(types.PRODUCTINFO, res.data)
        commit(types.LOADING, false)
      })
  },
阅读 3.8k
1 个回答

承接你的第二个例子,
把loading的flag放在state中,组件通过state获取是否loading

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题