如何在 webpack.config.js 中检查手表模式?

How to check for watch mode in webpack.config.js?

在我的 webpack.config.ts 中,我导出 两个 配置。

export default [development, production]

但是,当我 运行 webpack watch 时,production 配置被重建,我想避免这种情况。

如何才能只监视两个导出配置中的一个?

  1. Export a function
export default (env, argv) => [development, production]
  1. Check for env.WEBPACK_WATCH
export default (env: { WEBPACK_WATCH: boolean }) =>
  env.WEBPACK_WATCH ? development : [development, production]

您可以使用 webpack command line environment option --env.

例如:
您可以在 package.json 文件中的脚本中创建 2 个命令。

"scripts": {
    "start": "webpack --env development",
    "build": "webpack --env production"
}

并且在 webpack.config.js 文件中,您可以按如下方式访问它们:

module.exports = (env) => {
    // ...
    watch: env === 'development';
};