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则更适用于复杂的、需要灵活定制的配置修改。

相关推荐
!win !1 天前
通过重写组件轻松掌握用JSX写Vue项目
vue·jsx
zy happy2 天前
RuoyiApp 在vuex,state存储nickname vue2
前端·javascript·小程序·uni-app·vue·ruoyi
小阳生煎2 天前
Vue实现全局设置一个刷新按钮 只刷新当面路由页面 不跳转操作功能
vue.js·vue
Zzzzzxl_2 天前
互联网大厂前端面试实录:HTML5、ES6、Vue/React、工程化与性能优化全覆盖
性能优化·vue·es6·react·html5·前端面试·前端工程化
李慕婉学姐3 天前
【开题答辩过程】以《基于微信小程序垃圾分类图像识别技术实现》为例,不会开题答辩的可以进来看看
spring boot·微信小程序·vue
故事不长丨3 天前
【Java SpringBoot+Vue 实现视频文件上传与存储】
java·javascript·spring boot·vscode·后端·vue·intellij-idea
咚咚咚小柒4 天前
【前端】Webpack相关(长期更新)
前端·javascript·webpack·前端框架·node.js·vue·scss
老华带你飞5 天前
房屋租赁|房屋出租|房屋租赁系统|基于Springboot的房屋租赁系统设计与实现(源码+数据库+文档)
java·数据库·spring boot·vue·论文·毕设·房屋租赁系统
前端摸鱼匠5 天前
Vue 3 事件修饰符全解析:从 .stop 到 .passive,彻底掌握前端交互的艺术
前端·vue.js·node.js·vue·交互
Crazy Struggle5 天前
.NET 8.0 + Vue 企业级在线培训系统(开源、免费、支持多种主流数据库)
vue·.net 8.0·后台管理系统