“npm run build”不是在添加纱线之前运行吗?
Posted
技术标签:
【中文标题】“npm run build”不是在添加纱线之前运行吗?【英文标题】:Doesn't "npm run build" run before yarn add? 【发布时间】:2021-11-21 04:02:05 【问题描述】:我正在尝试安装我从我的 github 存储库中制作的包。
我用打字稿写的并添加了
"scripts":
"build": "tsc"
到它的 package.json。
如果你运行npm install me/myrepo"
,npm run build
(意思是tsc
)会在安装前自动运行,对吗?
那么,当你运行yarn add https://github.com/me/myrepo/
时呢?
我期待着同样的举动,但似乎不是那样。
你有什么方法可以在你运行“yarn add”的时候构建它吗?
【问题讨论】:
【参考方案1】:运行 yarn add 将安装依赖项并将其添加到 package.json (1)。添加软件包后,您必须运行 npm run build 或类似的“yarn run build”。
(1)https://classic.yarnpkg.com/lang/en/docs/cli/add/
【讨论】:
对不起,我没有足够的话。我说的是我安装的软件包的构建。我认为即使它没有构建文件(例如,./dist 目录),我也会在安装它时构建该包。对于浪费您的时间,我深表歉意。 我正在尝试从 github 存储库安装包。【参考方案2】:我自己想出来的。
我的问题不在于 npm 和 yarn 之间,而在于将 tsc
指定为 scripts
的方式。
它必须像下面这样:
"scripts":
"tsc": "tsc",
"build": "npm run tsc"
好像你只是简单地将tsc
指定为scripts
,这意味着tsc的全局依赖。
【讨论】:
以上是关于“npm run build”不是在添加纱线之前运行吗?的主要内容,如果未能解决你的问题,请参考以下文章
在打包(npm run build)的时候不执行了,但是也不报错,输入npm run dev可以启动