将CLI参数传递给package.json中的预命令

时间:2020-04-29 20:18:36

标签: javascript npm package.json

假设我的package.json中有

{
  "scripts": {
    "prebuild": "some-command",
    "build": "some-other-command"
  }
}

如果我现在运行npm run build -- --some-args,则prebuild命令some-command 不会得到--some-args传递给它。如何将其传递给所有前置/后置脚本?

1 个答案:

答案 0 :(得分:0)

您可以使用环境变量来做到这一点:

"scripts": {                                                                  
    "prebuild": "echo $FLAG \"prebuild\"",                                
    "build": "echo \"testing\""                                                     
}

如果您运行npm run build


> test@1.0.0 prebuild /test
> echo $FLAG "prebuild"

prebuild

> test@1.0.0 build /test
> echo "testing"

testing

如果您运行FLAG=-n npm run build

> test@1.0.0 prebuild /test
> echo $FLAG "prebuild"

prebuild
> test@1.0.0 build /test
> echo "testing"

testing

但是我不确定它是否可以与多个标志一起使用