重要提示:此文档包括 Yarn 1(经典版)。
有关 Yarn 2+ 文档和迁移指南,请访问 yarnpkg.com。

yarn run

运行一个已定义的软件包脚本。

可以在 package.json 文件中定义 scripts

{
  "name": "my-package",
  "scripts": {
    "build": "babel src -d lib",
    "test": "jest"
  }
}
yarn run [script] [<args>]

如果已在软件包中定义了 scripts 对象,那么此命令将运行指定的 [script]。例如

yarn run test

运行此命令将执行 package.json 中名为 "test" 的脚本。

可以通过在脚本名称后面传递其他参数来将其传递到脚本。

yarn run test -o --watch

运行此命令将执行 jest -o --watch

[script] 还可以是 node_modules/.bin/ 中的任何本地已安装的可执行文件。

也可以在此命令中省略 run,每个脚本都可以用其名称执行。

yarn test -o --watch

运行此命令将与 yarn run test -o --watch 执行相同操作。请注意,内置 cli 命令将优先于脚本,因此不应始终依赖其他脚本中的此快捷方式。

默认情况下,可以指定的 [script] 可以以 prepost 为前缀,以便在其他脚本之前执行。

{
  "name": "my-package",
  "scripts": {
    "build": "babel src -d lib",
    "prebuild": "jest"
  }
}

运行 yarn run build 将在 yarn build 之前执行 yarn run prebuild

yarn run env

运行此命令将列出脚本在运行时可用的环境变量。

如果要覆盖此命令,可以通过在 package.json 中定义自己的 "env" 脚本来执行此操作。

yarn run

如果不为 yarn run 命令指定脚本,则 run 命令将列出可对软件包运行的所有可用脚本。