angular - 通过 SystemJS 导入子 Angular 应用程序时找不到模块错误
问题描述
我正在尝试使用 single-spa 将另一个角度应用程序添加到我的容器应用程序中。
作为一个模板,我在 GitHub 上查看了这个repo 。
现在出现以下问题:
在应用程序加载服务中,以下行尝试使用 systemjs 加载应用程序并通过 single-spa 安装它
mount(appName: string, domElement: HTMLElement): Observable<unknown> {
return from(System.import<ParcelConfig>(appName)).pipe(
tap((app: ParcelConfig) => {
this.loadedParcels[appName] = mountRootParcel(app, {
domElement
});
})
);
}
在 import-map 概述中,您还可以看到所有内容都已正确导入:
当模块在 Angular 中加载时,现在会显示以下错误:
Error: Cannot find module 'child1'
at 6.js:1
at l.invoke (polyfills.js:1)
at Object.onInvoke (main.js:1)
at l.invoke (polyfills.js:1)
at a.run (polyfills.js:1)
at polyfills.js:1
at l.invokeTask (polyfills.js:1)
at Object.onInvokeTask (main.js:1)
at l.invokeTask (polyfills.js:1)
at a.runTask (polyfills.js:1)
但是,当我想通过 SystemJS 在 javascript 控制台中加载外部角度页面时,它可以正常工作,并且我可以正确恢复单水疗生命周期方法:
命令:
await System.import('child1');
结果:
Module {default: Module, __useDefault: true, bootstrap: ƒ, mount: ƒ, unmount: ƒ, …}
bootstrap: ƒ ()
default: Module {__esModule: true, Symbol(Symbol.toStringTag): "Module"}
mount: ƒ ()
unmount: ƒ ()
__esModule: true
__useDefault: true
有谁知道问题是什么?
解决方案
推荐阅读
- python - 开放式 AI 健身房中的随机播种
- html - 是否可以在纯 HTML 中根据条件隐藏标签?
- python - 从列表创建密钥对并附加到列表列表
- javascript - 我自己的外部 js 代码在 react-router 中工作一次
- dynamics-crm - 查找用于通过 ADFS 登录的浏览器
- python - 我想根据它们的“ index = somevalue”添加同一列中存在的两个单元格的值
- r - 将 R 函数从 dplyr 转换为 data.table
- kubernetes - Azure AKS 节点池未缩放
- c#-8.0 - 这是公共但抽象的接口方法预期的行为吗?
- python - 我想用python替换xml中的一个空节点