typescript - 从 yarn 安装带有 prepare 脚本的 npm 包只会产生 index.js
问题描述
我有这个示例打字稿包,准备脚本正在运行tsc
:https ://github.com/richard-ejem/tspackage
当我使用 npm 将它安装npm add git+https://github.com/richard-ejem/tspackage.git#master
到一个项目时,node_modules/tspackage/dist
它包含预期的 4 个文件:
- index.js
- 索引.d.ts
- 实用程序.js
- 实用程序.d.ts
但是,当使用 yarn 安装时yarn add git+https://github.com/richard-ejem/tspackage.git#master
,该dist
文件夹仅包含index.js
.
我错过了什么,还是这是纱线中的错误?是否有一些可能的解决方法/其他方法可以在 yarn install 上构建 typescript git 依赖项?
解决方案
终于找到了一个解决方案 - 诀窍是将空.npmignore
文件添加到存储库中。
可能与这个问题有关:https ://github.com/yarnpkg/yarn/issues/5235#issuecomment-571206092
如果没有.npmignore
,npm/yarn 会删除.gitignore
安装时匹配的所有内容,如果是 yarn,这会与prepare
脚本发生冲突。仍然很奇怪,dist/index.js
因为它也被忽略了,所以没有删除它.gitignore
,但是空.npmignore
的解决了问题。
推荐阅读
- c++ - insert_or_assign 允许迭代器
- android - 检测并发事件编辑
- angular - Angular 6 - Heroku 报告“构建成功”,但没有创建构建
- sql - 以低廉的成本存储审计日志
- c# - 为什么 Nuget 包不只包含引用的项目?
- wordpress - Wordpress 管理表单从媒体中选择文件
- java - 为什么 Log4J2 根记录器会消耗子记录器的所有日志级别?
- java - 在配置文件中保留 log4j2 日志级别的最佳方法
- asp.net-mvc - 如何在 aspnet core 2.1 MVC 应用程序中包含 saml
- c# - 将控件值作为 html.Pagedlist 参数传递