configureWebpack 和 chainWebpack 区别

configureWebpack 和 chainWebpack 区别

前言

今天在配置vue项目时分不清上述两者的使用所以简单说明一下

具体说明

在Vue CLI中,configureWebpackchainWebpack都是用来配置Webpack的选项,但它们之间有一些关键的区别。

configureWebpack

  • configureWebpack允许你直接修改Webpack的配置对象,它接收一个对象或一个函数作为参数。
  • 当你需要简单地修改Webpack配置时,比如添加一些"Loader"(加载器)"Plugin"(插件),或者修改一些现有的配置项时,可以使用configureWebpack
  • 通过configureWebpack直接修改 Webpack 配置时,你只能覆盖现有的配置,而不能对其进行细粒度的修改。
javascript 复制代码
configureWebpack: config => {
  // 在开发环境中,添加一个 CopyPlugin 插件
  config.plugins.push(new CopyPlugin({
    patterns: [
      { from: "/appConf", to: "destination" }
    ]
  }));
},

chainWebpack

  • chainWebpack允许你通过 Webpack 的链式API来修改配置,它接收一个函数作为参数,该函数接收一个 ChainableConfig 对象作为参数。
  • 当你需要对 Webpack 配置进行更复杂的修改时,比如根据环境不同应用不同的配置,或者需要更精细地控制 Webpack 的配置时,可以使用chainWebpack
  • 通过chainWebpack,你可以更灵活地对 Webpack 的配置进行修改,可以添加、移除、修改现有配置,也可以对Webpack的各个部分进行定制。
javascript 复制代码
chainWebpack: config => {
  config
    .plugin('html')
    .tap(args => {
      args[0].title = '新的标题'; // 在这里修改 HTMLWebpackPlugin 的 title
      return args;
    });
}

总结

configureWebpack适用于简单的配置修改,而chainWebpack则更适用于复杂的、需要灵活定制的配置修改。

相关推荐
一个很帅的帅哥7 小时前
实现浏览器的下拉加载功能(类似知乎)
开发语言·javascript·mysql·mongodb·node.js·vue·express
孟诸9 小时前
计算机专业毕设-校园新闻网站
java·vue·毕业设计·springboot·课程设计
Sca_杰19 小时前
vue2使用npm引入依赖(例如axios),报错Module parse failed: Unexpected token解决方案
前端·javascript·vue
会有黎明吗2 天前
完整版订单超时自动取消功能
java·vue·rabbitmq
andy7_2 天前
多版本node管理工具nvm
vue
1234Wu2 天前
高德地图2.0 绘制、编辑多边形覆盖物(电子围栏)
前端·vue
码力码力我爱你2 天前
Vue Application exit (SharedArrayBuffer is not defined)
linux·前端·javascript·qt·vue·wasm·webassembly
飞翔的佩奇2 天前
Java项目: 基于SpringBoot+mybatis+maven洗衣店订单管理系统(含源码+数据库+开题报告+任务书+毕业论文)
java·spring boot·vue·毕业设计·maven·mybatis·洗衣店
doc_wei2 天前
Java汽车销售管理
开发语言·spring boot·vue·汽车·毕业设计·intellij-idea·课程设计
蓝染-惣右介3 天前
【若依RuoYi-Vue | 项目实战】帝可得后台管理系统(一)
java·后端·物联网·vue·springboot