首页 > 解决方案 > 从 yarn 安装带有 prepare 脚本的 npm 包只会产生 index.js

问题描述

我有这个示例打字稿包,准备脚本正在运行tschttps ://github.com/richard-ejem/tspackage

当我使用 npm 将它安装npm add git+https://github.com/richard-ejem/tspackage.git#master到一个项目时,node_modules/tspackage/dist它包含预期的 4 个文件:

但是,当使用 yarn 安装时yarn add git+https://github.com/richard-ejem/tspackage.git#master,该dist文件夹仅包含index.js.

我错过了什么,还是这是纱线中的错误?是否有一些可能的解决方法/其他方法可以在 yarn install 上构建 typescript git 依赖项?

标签: typescriptyarnpkg

解决方案


终于找到了一个解决方案 - 诀窍是将空.npmignore文件添加到存储库中。

可能与这个问题有关:https ://github.com/yarnpkg/yarn/issues/5235#issuecomment-571206092

如果没有.npmignore,npm/yarn 会删除.gitignore安装时匹配的所有内容,如果是 yarn,这会与prepare脚本发生冲突。仍然很奇怪,dist/index.js因为它也被忽略了,所以没有删除它.gitignore,但是空.npmignore的解决了问题。


推荐阅读