这可能是一个非常愚蠢的问题,但是在阅读了vue.js 的状态管理文档之后,我想尝试一下 store 模式。我注意到store.state示例中的两个应用程序之间共享。但是我现在如何setMessageAction从组件中调用 store 的方法呢?商店不应该以某种方式注入/注册到 vue 实例中,以便可以通过this组件或类似的东西访问吗?
1 回答
江户川乱折腾
TA贡献1851条经验 获得超5个赞
是的,你是对的。
您应该在组件声明中声明您的商店,如此处所述
document.js
var store = {
debug: true,
state: {
message: 'Hello!'
},
setMessageAction (newValue) {
if (this.debug) console.log('setMessageAction triggered with', newValue)
this.state.message = newValue
},
clearMessageAction () {
if (this.debug) console.log('clearMessageAction triggered')
this.state.message = ''
}
}
var vmA = new Vue({
data: {
privateState: {},
<!-- HERE YOU ARE PASSING THE STATE -->
sharedState: store.state
}
})
添加回答
举报
0/150
提交
取消