npm模块在发布后丢失文件

时间:2017-07-26 08:27:31

标签: node.js typescript npm node-modules npm-publish

作为参考,回购是https://github.com/microsoftly/luis-response-builder

使用tsc生成节点模块文件并输出到dist文件夹。我有一个prepublishOnly步骤,删除dist文件夹,运行tsc,然后对转换的js运行测试。当我发布时,测试通过了。

问题是,当我在其他地方安装项目时,dist文件夹只包含路径为dist / src / index.js的文件。

我不能为我的生活找出为什么文件在安装时丢失但在发布时没有。

2 个答案:

答案 0 :(得分:4)

引自npm-publish Documentation

  

如果不存在本地.gitignore.npmignore文件,则会包含程序包目录中的所有文件。如果两个文件都存在且.gitignore而文件被.npmignore忽略,那么它将被包含在内。

您的资源库.gitignore file包含以下内容:

node_modules
dist
*.env
yarn-error.log

由于dist被忽略,因此根据文档,它未与npm publish一起提交。

答案 1 :(得分:-1)

查看package.json documentation about files

由于您还没有包含files密钥,因此它只会包含main中指定的文件(以及其他一些默认文件)。

files值是一个数组,因此您可以包含多个文件和/或文件夹。

例如:

files: [
  "dist",
  "config/somefile.js"
]