package.json 中的多个命令
Posted
技术标签:
【中文标题】package.json 中的多个命令【英文标题】:Multiple commands in package.json 【发布时间】:2018-03-30 09:14:28 【问题描述】:此命令:"start": "node server/server.js"
启动我的服务器,但在运行此命令之前,我还希望命令自动运行:
'webpack'
.
我想构建一个可以运行的脚本
npm run someCommand
- 它应该首先在终端中运行webpack
,然后是node server/server.js
。
(我知道如何使用 gulp 进行配置,但我不想使用它)
【问题讨论】:
【参考方案1】:如果我理解正确的话,你想先运行 webpack,然后编译运行 nodejs。也许试试这个:
"start": "webpack && node server/server.js"
【讨论】:
以及如何将 args 传递给两个内部命令?例如,我想运行“npm run start -- --dest dest/env”,并且我想要 dest arg 用于 webpack 和 node 命令。【参考方案2】:以下应该起作用:
"start": "webpack && node server/server.js"
不过,为了可读性(特别是如果您计划在未来添加其他任务),您可能需要考虑为每个任务创建单独的条目,然后从 start
调用每个条目。比如:
"init-assets": "webpack",
"init-server": "node server/server.js",
"start": "npm run init-assets && npm run init-server"
【讨论】:
【参考方案3】:你也可以像这样链接命令:
"scripts":
"clean": "npm cache clean --force",
"clean:complete": "npm run clean && npm uninstall -g @angular/cli && rmdir /Q /S node_modules",
"clean:complete:install": "npm run clean:complete && npm i -g @angular/cli && npm i && npm install --save-dev @angular/cli@latest"
【讨论】:
我怎么称呼它? npm 运行干净?它将全部运行或者我需要编写 npm run clean -complete -install ? 是的。 npm 运行清洁 / npm 运行清洁:完成。这只是附加同时命令的一种方式。【参考方案4】:此外,除了接受的答案和@pdoherty926 的答案,如果您想运行两个命令提示符,您可以在每个命令前添加“start”:
"init-assets": "webpack",
"init-server": "node server/server.js",
"start": "start npm run init-assets && start npm run init-server"
【讨论】:
以上是关于package.json 中的多个命令的主要内容,如果未能解决你的问题,请参考以下文章
将命令行参数传递给 package.json 中的 npm 脚本