micro-frontends-vue/preload-routes

请问两个子项目能进行通信吗

HaoDaYiGuoFan opened this issue · 3 comments

例如js项目调用ts项目的组件,并将数据传输到ts项目的form表单中这种操作

@HaoDaYiGuoFan

将组件注册到全局,就可以实现 JS / TS 组件互相调用;

数据传输的话也是可以的:

  1. 方式一:主项目中注册一个全局事件总线,在 JS 项目和 TS 项目里使用 this.bus.$emitthis.bus.$on 通信;
  2. 方式二:使用 vuex;

但是这种场景下是不是没必要拆分成独立的两个子项目呢

@HaoDaYiGuoFan

将组件注册到全局,就可以实现 JS / TS 组件互相调用;

数据传输的话也是可以的:

  1. 方式一:主项目中注册一个全局事件总线,在 JS 项目和 TS 项目里使用 this.bus.$emitthis.bus.$on 通信;
  2. 方式二:使用 vuex;

但是这种场景下是不是没必要拆分成独立的两个子项目呢

我们项目要求子项目可以独立运行,但是又可以实现这种相互交互的操作

@HaoDaYiGuoFan
将组件注册到全局,就可以实现 JS / TS 组件互相调用;
数据传输的话也是可以的:

  1. 方式一:主项目中注册一个全局事件总线,在 JS 项目和 TS 项目里使用 this.bus.$emitthis.bus.$on 通信;
  2. 方式二:使用 vuex;

但是这种场景下是不是没必要拆分成独立的两个子项目呢

我们项目要求子项目可以独立运行,但是又可以实现这种相互交互的操作
可以通过类似sso的方式,毕竟以后多个项目可能存在多个技术栈,多个子项目通信最好通过windows或者注册一个全局事件总线,参考:https://github.com/hubvue/Micro-FE