apps.ts 986 B

123456789101112131415161718192021222324252627282930313233
  1. /**
  2. *微应用apps
  3. * @name: 微应用名称 - 具有唯一性
  4. * @entry: 微应用入口.必选 - 通过该地址加载微应用,
  5. * @container: 微应用挂载节点 - 微应用加载完成后将挂载在该节点上
  6. * @activeRule: 微应用触发的路由规则 - 触发路由规则后将加载该微应用
  7. */
  8. //子应用列表
  9. const _apps: object[] = [];
  10. for (const key in import.meta.env) {
  11. if (key === 'VITE_APP_SUB_APP') {
  12. const appList = JSON.parse(import.meta.env[key].replace(/'/g, '"'));
  13. appList.forEach((app) => {
  14. // const name = app[0];
  15. let utlStr;
  16. if (import.meta.env.PROD) {
  17. // 多端口请求
  18. utlStr = VUE_APP_URL.baseUrl.split(':')[1] + app[1];
  19. // utlStr = app[1];
  20. } else {
  21. utlStr = app[1];
  22. }
  23. const obj = {
  24. name: app[0],
  25. entry: utlStr,
  26. container: `#${app[0]}`,
  27. activeRule: app[0],
  28. };
  29. _apps.push(obj);
  30. });
  31. }
  32. }
  33. export const apps = _apps;