gpt4 book ai didi

Npm:仅在作为依赖项安装时运行 postinstall 脚本

转载 作者:行者123 更新时间:2023-12-03 14:33:35 41 4
gpt4 key购买 nike

我开发了一个 npm 包(“node_commons”),它包含在我的其他项目中,如下所示:

package.json(其他项目)

"node-commons": "git+ssh://git@stash.custom.domain.net:7999/npm/libs/node_commons.git"

node_commons 包是用 ES6 编写的,但是以后不支持这个版本,所以我使用 postinstall 脚本用 babel 转译它。

package.json (node_commons)
"postinstall": "babel src -d src"

这工作正常。当包作为依赖项包含在我的项目中时,文件将被转译。

我的问题:当我开发 node_commons 包时,我使用 npm install安装内部依赖项。但后来我不想转换它。 我只想编译,当包作为依赖安装时 (例如在我的另一个项目中)。有没有办法做到这一点?

像这样的东西:

package.json (node_commons)
"postinstall-as-dependency": "babel src -d src"

最佳答案

如果我理解正确,您希望您的包运行 postinstall仅当用户将其作为依赖项( npm install node-common )安装时才编写脚本?

当您的安装后脚本运行时,它具有 npm_config_save_dev可用,当用户使用 --save-dev 安装软件包时,这是“真的”旗帜:

"postinstall": "! [ $npm_config_save_dev ] && echo \"Installed as a dependency\" || \"Installed as a dev dependency\""

关于Npm:仅在作为依赖项安装时运行 postinstall 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54212147/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com