如何为递归组件设置vuex存储实例

时间:2019-10-25 07:44:50

标签: vue.js vuex

我有一个使用vuex共享数据的组件树。该组件树应该是递归的。每个递归都应具有自己的vuex存储实例。在组件树的根目录中,我这样注册商店:

beforeCreate () {
  this.$store = createStore()
}

当我通过this.$store在组件树的子级之一中访问商店时,它总是指向商店的 root 实例。

这是递归树的样子(简化):

- Recursion Level 1 (registers store)
  - Component (uses this.$store)
    - Recursion Level 2 (registers store)
      - Component (uses this.$store => points to Recursion Level 1's store)

商店的状态通过函数定义:

state () { ... }

商店本身是由另一个功能创建的:

export default function createStore () {
  return new Vuex.Store({
    ...options,
  })
}

0 个答案:

没有答案