我可以使用Vuex存储自己的类对象吗?

时间:2018-09-10 14:39:03

标签: javascript vue.js vuex

我想在组件之间共享一个对象,那里有类代码。

class IDE {
constructor(id) {
    config.set('basePath', 'static/js/ace');
    this.aceEditor = edit(id);
    this.aceSession = this.aceEditor.session;
    this.aceSession.setMode("ace/mode/javascript");
    this.aceEditor.setTheme('ace/theme/monokai');
    this.aceEditor.setShowPrintMargin(false);
}
setMode() {

}
}

有人告诉我使用vuex,这是我的商店模块代码。

export default{
namespaced:true,
state:{
    ide:null
},
mutations:{
    setIDE(state,ide){
        state.ide = ide
    }
},
getters:{
    getIDE: state =>{return ide}
}
}

当我尝试将ide对象存储起来时 this.$store.state.global.ide.__proto__.setMode('ace/mode/java')

chrome总是告诉我 TypeError: Cannot read property 'setMode' of undefined

所以我在开发工具中查看代码

enter image description here

  1. 如何调用ide.setMode()之类的对象?
  2. vuex可以存储对象吗? 我发现vuex的许多示例都使用数字和字符串之类的简单变量。都不使用复杂的类对象。

0 个答案:

没有答案