apps.ts 916 B

12345678910111213141516171819202122232425262728293031
  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. utlStr = VUE_APP_URL.baseUrl.split(':')[1] + app[1];
  18. } else {
  19. utlStr = app[1];
  20. }
  21. const obj = {
  22. name,
  23. entry: utlStr,
  24. container: '#content',
  25. activeRule: name,
  26. };
  27. _apps.push(obj);
  28. });
  29. }
  30. }
  31. export const apps = _apps;