生命周期脚本

中英双语

有一些特殊的生命周期脚本只在某些情况下发生。除了 pre<event>post<event><event> 脚本之外,还会出现这些脚本。

  • prepareprepublishprepublishOnlyprepackpostpackdependencies

准备(自 npm@4.0.0 起)

  • 在打包之前的任何时间运行,即在 npm publishnpm pack 期间

  • 在打包之前运行

  • 在包发布之前运行

  • 在本地 npm install 上运行,不带任何参数

  • prepublish 之后但在 prepublishOnly 之前运行

  • 注意:如果通过 git 安装的包包含 prepare 脚本,则在打包和安装包之前,将安装其 dependenciesdevDependencies,并运行准备脚本。

  • npm@7 起,这些脚本在后台运行。要查看输出,请运行:--foreground-scripts

预发布(已弃用)

  • npm publish 期间不运行,但在 npm cinpm install 期间运行。有关更多信息,请参见下文。

仅预发布

  • 在包装准备和包装之前运行,仅在 npm publish 上运行。

预包装

  • 在打包 tarball 之前运行(在 "npm pack"、"npm publish" 和安装 git 依赖项时)。
  • 注意:"npm run pack" 与 "npm pack" 不同。"npm run pack" 是任意用户定义的脚本名称,其中 "npm pack" 是 CLI 定义的命令。

邮包

  • 在生成 tarball 之后但在它被移动到最终目的地之前运行(如果有的话,publish 不会在本地保存 tarball)

依赖项

  • 如果发生更改,则在修改 node_modules 目录的任何操作之后运行。
  • 不在全局模式下运行