Vuex:访问状态(扩展数组的类的对象)时,“ TypeError不是函数”

时间:2019-10-18 14:40:13

标签: javascript typescript vuex

在下面的代码块中访问TypeError: state.projects.load is not a function getter时,我得到了异常projects

class ProjectList extends Array {
    initialised: boolean = false

    load() {
        // loads data into the array
        return 
    }
}

const store = new Vuex.Store({
    state: {
        projects: new ProjectList()
    },
    mutations: {
        add_project(state, p) {
            state.projects.push(p)
        }
    },
    getters: {
        projects: state => {
            if (!state.projects.initialised) {
                state.projects.load()               
            }
            return state.projects
        }        
    }
})

该问题似乎与ProjectList扩展Array有关,因为测试了一个在没有超类的类上调用方法的简单情况很好。

有人对如何正确引用Vuex中使用扩展了Array的类的对象有任何建议吗?

0 个答案:

没有答案