【问题标题】:Getting unknown local action type in Vuex Store在 Vuex Store 中获取未知的本地操作类型
【发布时间】:2020-10-13 19:13:19
【问题描述】:

我已将我的 Vuex 存储分解为命名空间模块。

我创建了一个User 模块,我需要在其中调用我的Showrooms 模块。有趣的是,这个action 工作正常。但我正在更新商店:

dispatch('showrooms/updateLocalShowroom',
  {
    weddingId: element.wedding.id,
    showroomDresses: element.showroom.showroomDresses,
    status: element.showroom.status,
    uuid: element.showroom.uuid,
  }, 
    { 
      root: true 
    }
 )

但是当我尝试重置 Showrooms 存储时: dispatch('showrooms/resetShowrooms', { root: true })

我收到以下错误:

[vuex] unknown local action type: showrooms/resetShowrooms, global type: user/showrooms/resetShowrooms

我唯一能想到的是,当我 resetShowrooms 我在我的商店模块中这样做时:

这个动作:

resetShowrooms: ({ commit }) => {
  commit('zeroOutShowrooms')
},

调用这个突变

zeroOutShowrooms: (state) => {
  Vue.set(state, 'showrooms', [])
}

【问题讨论】:

    标签: vue.js vuex


    【解决方案1】:

    最终dispatch 在第二个位置寻找一些数据。这就是为什么这不起作用:

    resetShowrooms: ({ commit }) => {
      commit('zeroOutShowrooms')
    },
    

    虽然这个 DID 工作并解决了我的问题:

    dispatch('showrooms/resetShowrooms', '', { root: true })
    

    只需发送空字符串就可以了,现在一切都很好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-13
      • 1970-01-01
      • 1970-01-01
      • 2021-07-21
      • 2019-10-28
      • 1970-01-01
      • 2022-01-02
      • 2021-06-26
      相关资源
      最近更新 更多