当前位置: 首页 > article >正文

Webpack插件浅析

常用的webpack插件功能介绍:

1.HotModuleReplacementPlugin

模块热更新插件。Hot-Module-Replacement的热更新是依赖于webpack-dev-server,有时是在打包文件改变时更新打包文件或者重新加载刷新整个页面,HMR是只更新修改的部分。

HotModuleReplacementPlugin是webpack模块自带的,在plugins配置项中直接使用即可。

const webpack = require('webpack')
plugins: [  new webpack.HotModuleReplacementPlugin(), // 热更新插件]

02、html-webpack-plugin

html-webpack-plugin的主要作用就是在webpack构建后生成html文件,同时把构建好入口js文件引入到生成的html文件中。

03、clean-webpack-plugin

clean-webpack-plugin用于在打包前清理上一次项目生成的bundle文件,它会根据output.path自动清理文件夹。

04 、mini-css-extract-plugin

css提取插件

产生背景:在进行打包时,css代码会打包到js中,不利于文件缓存

作用:依据每个entry生成单个css文件(将css从js中提取出来)

loader和plugins的区别:

  *  loader是文件加载器,能够加载资源文件,并对文件进行一些处理,如编译压缩 等,最终一起打包到指定的文件中。
  * plugin赋予了webpack各种灵活的功能,如打包优化资源管理环境变量注入等,目的是为了解决loader无法实现的功能

  从上图可以看出:

  *  loader运行在项目打包之前;

  * plugins运行在整个项目的编译时期;

 在Webpack运行的整个生命周期中会广播出许多事件,Plugin会监听这些事件,在合适的事件通过 webpack 提供的 api 改变输出结果。

对于 loader 而言,它实质上是一个转换器,将A文件编译成B文件,操作的是 文件 ,比如将A文件编译成B文件,单纯的是一个文件转换过程。

参考:webpack(四)——webpack里面的plugin和loader的区别 - 颗就完了 - 博客园 (cnblogs.com)


http://www.kler.cn/a/229279.html

相关文章:

  • HarmonyOS NEXT应用开发边学边玩系列:从零实现一影视APP (五、电影详情页的设计实现)
  • electron 打包后的 exe 文件,运行后是空白窗口
  • React 第三方状态管理库相关 -- Redux MobX 篇
  • 【漏洞分析】DDOS攻防分析
  • Sprint Boot教程之五十八:动态启动/停止 Kafka 监听器
  • mayavi -> python 3D可视化工具Mayavi的安装
  • 用 Delphi 程序调用 Python 代码画曲线图 -- 数据来自 Delphi 程序
  • OpenHarmony开源鸿蒙开发之旅
  • python+flask人口普查数据的应用研究及实现django
  • R语言:箱线图绘制(添加平均值趋势线)
  • 序列化和反序列化、pytest-DDT数据驱动
  • threejs之常用贴图
  • vite+vue3发布自己的npm组件+工具函数
  • 【C/C++】C/C++编程——整型(二)
  • 【Java】new Date()的取值
  • 16.docker删除redis缓存数据、redis常用基本命令
  • 无线传输标准协议
  • OpenGL的着色器内存访问
  • LeetCode 热题 100 | 链表(下)
  • Python_百度贴吧评论情感分析
  • 「Python系列」Python解释器
  • 关于RabbitMQ常见的十道面试题
  • SpringSecurity(18)——OAuth2授权码管理
  • Unix五种I/O模型(阻塞、非阻塞、多路复用、信号驱动、异步)
  • 网络选择流程分析(首选网络类型切换流程)
  • Allegro如何把Symbols,shapes,vias,Clines,Cline segs等多种元素一起移动