0

我正在构建一个 npm 模块,我想在其中包含两个目录:/dist 和 /demo。

到目前为止,我的方法是在 package.json 中使用“文件”属性:

"files": [
    "dist",
    "demo"
]

运行 npm pack 时,tgz 文件成功包含 demo 文件夹,以及 /dist 中的构建文件。

但是,在构建阶段,我添加了一个 shell 脚本,它将一些文件(生成的 mylib.js 和 mylib.css)复制到 /demo 目录。我的问题是npm pack不关心这些特定文件,它们不包含在 tgz 中(尽管我可以在我的资源管理器中看到它们)。但是,如果 shell 脚本对 /demo/index.html 的内容进行了更改,这些更改将包含在 tgz 中。我怎么能包含丢失的文件?

4

1 回答 1

0

似乎我误解了这个问题:如果文件不在 tgz 中,那是因为我在 /demo 中添加了一个 .gitignore,忽略了 js 和 css 文件。因为我真的不希望提交这些文件,所以解决方案是添加一个 .npmignore 文件,没有规则匹配 css/js

于 2021-08-19T10:10:54.127 回答