当涉及到 npm 脚本时,通常希望将参数从命令行传递到正在执行的脚本。让我们深入研究如何实现这一点。
从 npm 2 开始,传递参数很简单:
npm run <command> [-- <args>]
这里的关键元素是 - - 分隔符。它区分用于 npm 的参数和用于脚本的参数。
例如,使用下面的 package.json 片段:
{ "scripts": { "grunt": "grunt", "server": "node server.js" } }
您可以按如下方式传递参数:
npm run grunt -- task:target // invokes `grunt task:target` npm run server -- --port=1337 // invokes `node server.js --port=1337`
注意: 即使参数不以 - 或 -- 开头,也建议显式 -- 分隔。考虑:
npm run test foobar ['C:\Program Files\nodejs\node.exe', 'C:\git\myrepo\test.js', 'foobar']
相反,使用显式 -- 可以消除歧义:
npm run test -- foobar ['C:\Program Files\nodejs\node.exe', 'C:\git\myrepo\test.js', 'foobar']
要访问脚本中的参数值,请参阅 process.argv。或者,考虑使用 yargs 或 minimist 等解析库,以更灵活地处理参数(包括命名参数)。
以上是如何将命令行参数传递给我的 npm 脚本?的详细内容。更多信息请关注PHP中文网其他相关文章!