![](/img/trans.png)
[英]Testing a NUXT.js and Vue.js app with Jest. Getting '[vuex] module namespace not found in mapState()' and '[vuex] unknown action type'
[英]Nuxt.js: dispatch Vuex action not working with mapState
我正在尝试在 NuxtJS 的 fetch 挂钩中调度操作
async fetch() {
return await this.$nuxt.context.store.dispatch('settings/getSettings')
}
然后
<el-table v-if="!$fetchState.pending" :data="settings.colors">
...
</el-table>
他们
computed: {
...mapState({
loading: 'settings/loading',
settings:'settings/settings'
}),
}
最后我得到一个错误颜色未定义,但是下面的代码可以工作,没有 Vuex
async fetch() {
return await this.$axios.$get(EP_GET_DATA_SETTINGS).then((data)=>{
this.settings = data
})
}
请告知如何解决这个问题
当您将mapState
与 Vuex 模块一起使用时,第一个参数是模块名称:
computed: {
...mapState('settings', {
loading: 'loading',
settings:'settings'
}),
}
这是使用数组语法的另一种方法:
computed: {
...mapState('settings', ['loading', 'settings'])
}
computed: {
...mapState({
loading: (state) => state.settings.loading,
settings: (state) => state.settings.settings,
}),
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.