Vuex-模块状态返回未定义

问题描述

对于为什么state属性返回undefined有点困惑。是vue.js的新手,确实需要了解其工作原理。

这是我所做的

在state.js文件中,比如说todo模块,我有

const state = () => {
    return {
        todos: [
            {
                id: 1,title: 'Go outside'
            },{
                id: 2,title: 'Come back in'
            }
        ]
    }
}
export default {
    state
}

我有一个索引文件,我将所有内容连接在一起并导出

import state from './state'
import getters from './getters'
import actions from './actions'
import mutations from './mutations'

export default {
    state,getters,actions,mutations
}

在商店入口点我有

import Todos from './modules/todos'
export default 
  modules: {
    Todos
  }
})

因此,问题在于,动作状态良好,但由于状态属性未定义,因此状态会影响其他方法(例如吸气剂和突变)。

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'
            }
        ]
    }
}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...