我正在尝试使用 lerna 构建我的第一个 Angular 组件包,它运行良好,直到我意识到我必须添加“ng-packagr”才能将所有 HTML 与其余代码捆绑在一起。在添加了支持并让它现在突然工作之后,我的文件没有发布到 tarball 中。
这是我的 package.json
{
"name": "@custom/core",
"version": "0.0.7",
"description": "Test",
"main": "./dist/bundles/custom-core.umd.min.js",
"module": "./dist/esm2015/custom-core.js",
"typings": "./dist/index.d.ts",
"$schema": "./node_modules/ng-packagr/package.schema.json",
"ngPackage": {
"lib": {
"entryFile": "./src/index.ts"
},
"whitelistedNonPeerDependencies": [
"."
]
},
"scripts": {
"build": "ng-packagr -p package.json"
},
"files": [
"dist"
],
...
我的 dist 文件夹包含各种文件夹,如下所示:
但是当我运行 alerna publish
或npm pack
时会发生这种情况:
如您所见,只有 1 个文件被添加到 tarball...
有谁知道为什么会突然发生这种情况?我试过玩弄我的 .gitignore ,想可能是它迫使包装忽略这些其他文件,但事实并非如此。
更新
好的,所以我发现罪魁祸首是ng-packagr
。当我运行我的npm run build
which usedng-packagr -p package.json
来构建不同的模块包时,该 CLI 也会生成一个 package.json 进入我的dist
文件夹。当npm pack
或lerna publish
尝试使用 a 打包所有内容时,package.json
他们必须查看生成的 on indist
而不是其上方文件夹中的那个。
我不确定我应该如何解决这个问题。