我正在学习如何 angular (4+) 编译项目 AOT 以创建一个库,并且我对生成的文件有一些疑问。我编写了一个脚本来创建 esm 和 umd 包(.js 和 .map.js)、每个文件 (ngc) 和 package.json 的元数据和类型(我在其中定义了包的入口点)
{
"main": "maestro.umd.js",
"jsnext:main": "maestro.esm.js",
"module": "maestro.esm.js",
"types": "index.d.ts"
}
然而,即使当我将我的包集成到主项目中时 JIT 编译工作正常,我也遇到了 AOT 的问题。为了解决它,我不得不将 ngc 生成的每个 .js 文件复制到 dist 文件夹中。因此,为了恢复,我为我的库提供这些文件:
- 包.json
- esm 包(.js 和 .map.js)
- umd 包(.js 和 .map.js)
- ngc 生成的文件(每个 .ts 文件的 .d.ts、.metadata.json 和 .js)
有人可以确认我们需要 .js 文件吗?是否可以在 AOT 编译期间使用 umd bundle 代替?