据我了解,Webpack 在幕后使用一个默认的配置对象,该对象根据 development/production
环境而异。我非常确定这一点,因为它会产生针对不同环境的 不同捆绑结果
,而我们在 webpack.config.js
中没有指定任何内容。但是,我有以下疑问:
- 是否可以查看这些默认配置对象?
- 是否可以完全禁用它们?
- 我认为改变它们的唯一方法是通过添加我们想要更改的部分到我们的
webpack.config.js
中来覆盖它们。我是正确的吗?
能否查看这些默认配置对象?
是否可能完全禁用它们?
可以使用 webpack --mode=none
命令来禁用。
我认为唯一改变它们的方式是通过在我们自己的 webpack.config.js 中添加要更改的部分来覆盖它们。我对吗?
参考 Webpack 官方博客:
通过新的 mode 选项,我们试图减少有用构建所需的配置。我们试图使用这些默认值来涵盖常见情况。
但从我们的经验来看,不是每个人都适合使用默认值。每个团队都有不同的需求,有时是由于遗留问题,有时是由于个人偏好,有时是由于特殊应用程序,有时是因为他们不相信常见的最佳实践。许多人想要改变默认值以适应自己的用例。我们已经为你准备好了。添加 mode 不意味着我们删除配置。一切仍然可配置。我们实际上使大多数内部优化步骤可配置(现在可以禁用它们)。
mode 是通过将默认值设置为配置选项来实现的。没有特殊行为通过 mode 实现,这在其他配置选项中也是可能的。