Vuex,Webpacker和多个包之间的共享状态

时间:2018-10-18 07:57:33

标签: ruby-on-rails vue.js webpack webpacker

我目前正在使用webpacker的Rails项目中工作。我希望能够创建小的动态组件并将其打包。我们希望能够将这些包用作服务器端呈现的html中的元素。尽管这可行(我们目前每个组件都有一个包),但我不知道在这些包之间共享vuex存储的最佳方法是什么。我猜这可以通过webpacker来完成,但我不确定。

情况,例如:

 dynamic_component_one data-id="abc"
 dynamic_component_two data-id="abc

 = javascript_pack_tag 'dynamic_component_one'
 = javascript_pack_tag 'dynamic_component_two'

基本上我想要实现的是

dynamic_component_1和dynamic_component_2共享一个通用的vuex存储

我当前的解决方案存在以下问题,感觉很棘手。我将Vue构造函数和Vuex Store注册到全局window对象,以在不同的包中重复使用它们。

const vuex_store = new Vuex.Store({
  strict: true
});

window['vue'] = Vue
window['vuex_store'] = vuex_store

如果有人能指出正确的方向,我将不胜感激。

0 个答案:

没有答案