【发布时间】:2023-03-18 06:14:01
【问题描述】:
我无法弄清楚为什么 npm 使用 . 而没有 -- 分隔符。
在以下命令中,. 被传递给 test 脚本,没有 -- 分隔符。
npm test .
test 脚本在package.json 中定义如下:
"test": "react-app-rewired test"
将常规参数传递给test 脚本
当我尝试将 --coverage 传递给 npm test 时发生这种情况,但后来我发现要将参数传递给 npm 脚本,我需要在任何后续参数之前使用 --。
如果我想传递参数,这就是有效的:
npm test -- --coverage
但这不会通过--coverage 参数
npm test --coverage
问题是为什么 . 在没有 -- 的情况下通过。根据 npm 文档将任何参数传递给我们需要使用 -- 分隔符的脚本,npm 将知道以下标志/参数适用于 test 脚本或我们想要参数化的任何其他脚本。
【问题讨论】:
-
你能澄清一下你在哪里收到/没有收到这些论点吗?您如何判断一个有效而另一个无效?
-
我编辑了我的问题以提供更多背景信息。告诉我这是否更有意义。
-
注意位置参数和选项的区别:stackoverflow.com/questions/36495669/…
-
啊哈。如果我得到正确的 ti,
.是npm命令的选项吗?但在我的情况下,它也是npm test包装的测试命令的参数 -
基本上,句点 (
.) 不会被解释为选项,因为它不以连字符 (-) 开头。
标签: reactjs npm arguments npm-scripts react-scripts