不工作...mapGetters

Dmi*_*nik 0 vue.js vuex

错误 [vuex] 未知 getter:计数器/计数`

结构:

商店.js

const state = {
    someRootState: 'someRootState'
}

const getters = {
    getRootState: state => state.someRootState
}

import counter from './counter.js'

export default new Vuex.Store({
    state,
    getters,
    modules:{
        counter
    }
})
Run Code Online (Sandbox Code Playgroud)

计数器.js

const state = {
    count: 10
}

const getters = {
    getCount: state => state.count
}

export default {
    namespaced: true,
    state,
    getters
}
Run Code Online (Sandbox Code Playgroud)

应用程序.vue

import { mapGetters } from "vuex";

computed: {
    //doesn't work  [vuex] unknown getter: counter/count
    ...mapGetters("counter", [
        "count"
    ]),

    //doesn't work  [vuex] unknown getter: counter/count
    ...mapGetters({
        count: "counter/count"
    }),

    //work
    ...mapGetters(["getRootState"]),

    //work
    ...mapGetters({
        getRootState: "getRootState"
    }),

}
Run Code Online (Sandbox Code Playgroud)

mapStates 工作正常,mapGetters 不起作用,请帮助我理解

Lin*_*org 5

你的 getter 被称为getCount,而不是count,所以mapGetters调用应该如下所示:

...mapGetters("counter", [
  "getCount"
]),
Run Code Online (Sandbox Code Playgroud)