You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在webpack配置中检测watch模式并仅监听指定导出配置?

解决方案

你可以通过以下三种常用方法实现只监听单套配置:

方法1:给配置加名称标识,运行时指定

首先给两套配置分别添加name属性:

const development = {
  name: 'dev',
  watch: true,
  // 其余开发配置...
}

const production = {
  name: 'prod',
  // 其余生产配置...
}

export default [development, production]

运行watch命令时通过--config-name参数指定要监听的配置即可:

webpack watch --config-name dev

方法2:显式关闭生产配置的监听属性

无需修改运行命令,直接给生产配置添加watch: false配置项,就算全局触发watch指令,生产配置也不会开启监听:

const production = {
  watch: false,
  // 其余生产配置...
}

方法3:通过环境变量动态控制导出的配置

通过自定义环境变量判断当前是否为监听模式,只导出需要的配置:

  1. 先在package.json中新增watch命令,传入自定义环境变量(跨平台可使用cross-env处理环境变量):
{
  "scripts": {
    "watch": "cross-env ENABLE_WATCH=true webpack watch"
  }
}
  1. 在webpack.config.ts中判断环境变量,动态导出配置:
const isWatchMode = process.env.ENABLE_WATCH === 'true'
export default isWatchMode ? [development] : [development, production]

内容的提问来源于stack exchange,提问作者Nato Boram

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 07:36:07