在 Vuex 4 和 Vue 3 中使用 `mapActions` 或 `mapGetters`

Adr*_* HM 17 javascript vue.js vuex vuejs3

有人知道如何在函数中使用mapStatemapGetters使用吗?我知道可以使用带有钩子的商店但是使用这个钩子我们导入所有商店,或者我们可以指定一个:Vue 3setupuseStoremapStatemapGettersmodule

// ...

computed: {
   ...mapGetters('myModule', [
      'myStateVariable'
   ]
) 

//...
Run Code Online (Sandbox Code Playgroud)

Mat*_*att 5

也许是这样的:

import { computed }  from 'vue';
import { useStore } from 'vuex';

const module = 'myModule';

export default {
    setup() {
        const store = useStore();

        return {
            // getter
            one: computed(() => store.getters[`${module}/myStateVariable`],

            // state
            two: computed(() => store.state[module].myStateVariable,
        };
    },
};
Run Code Online (Sandbox Code Playgroud)