Vue.js Vuex-模块状态返回未定义

Vue.js Vuex-模块状态返回未定义,vue.js,vuex,vuex-modules,Vue.js,Vuex,Vuex Modules,我有点困惑,为什么state属性会返回undefined。我是vue.js新手,真的需要了解它是如何工作的 以下是我所做的 在todo模块的state.js文件中,我有 const state=()=>{ 返回{ 待办事项:[ { id:1, 标题:“走出去” }, { id:2, 标题:“回来” } ] } } 导出默认值{ 状态 } 我有一个索引文件,我把所有东西连接在一起并导出它 从“/state”导入状态 从“/getter”导入getter 从“/actions”导入操作 从“./突

我有点困惑,为什么state属性会返回
undefined
。我是vue.js新手,真的需要了解它是如何工作的

以下是我所做的

在todo模块的state.js文件中,我有

const state=()=>{
返回{
待办事项:[
{
id:1,
标题:“走出去”
},
{
id:2,
标题:“回来”
}
]
}
}
导出默认值{
状态
}
我有一个索引文件,我把所有东西连接在一起并导出它

从“/state”导入状态
从“/getter”导入getter
从“/actions”导入操作
从“./突变”导入突变
导出默认值{
国家,,
获得者,
行动,
突变
}
在商店入口我有

从“./modules/todo”导入TODO
导出默认值
模块:{
待办事项
}
})
所以,问题是,操作可以完美地工作,但是状态正在影响其他对象,比如getter和transformation,因为状态属性是未定义的


vue devtool在我的浏览器中停止工作,因此我尝试
console.log(this.$store.state.todos)
但是,它是未定义的

您必须修改state.js文件。你应该像下面这样导出

export default {
    state: {
        todos: [
            {
                id: 1,
                title: 'Go outside'
            },
            {
                id: 2,
                title: 'Come back in'
            }
        ]
    }
}

您能否尝试
this.$store.state.Todos
?它返回了一个对象,但我希望不仅在计算中,而且在getter和mutations中都能访问Todos属性您能否尝试执行@Mahamudul提到的操作,并将state的导出语句设置为
export default state
,至于getter和mutations,您可以假设您将获取
状态
作为参数,因为当您将getter和transformation作为一个模块合并在一起时,Vue将使其可用于getter和transformation。请分享你的getter和translations文件以获取更多信息我已经做了这些,只是不知道如何在实际组件中使用它们之前仔细检查所有“getter”,我认为状态应该是一个函数而不是一个对象。我同意你最初的评论,即它应该是
导出默认状态
,而不是
导出默认{state}
状态不应该是函数。若您使用函数,那个么它应该返回名为state的state对象。但是这个解决方案会很好。在我的组件中使用它之前,我如何仔细检查
…mapGetters(['myTodos'))
您的状态值?分享你的getters.js文件,这就是我想要弄明白的。