美文网首页
webpack-plugin篇

webpack-plugin篇

作者: liuxiaojie93 | 来源:发表于2020-06-23 22:45 被阅读0次

2、webpack核心模块——tapable

tapable 是 webpack 的一个核心工具,但也可用于其他地方,以提供类似的插件接口。tapable模块中暴露了Hook类,pugins都是注册在Hook的实例化对象上,这个类暴露 tap, tapAsync 和 tapPromise 方法,webpack中的插件会将所需执行的函数通过tap 、tapAsync 、tapPromise等方法注册到对应钩子上。这样,webpack调用相应钩子时,散落在各文件的插件就会自动执行

插件类型:同步事件(sync)、异步并行事件(asyncParallel)、同步串行事件(asyncSeries)

compiler对象——hooks(对应的编译周期详情见https://www.webpackjs.com/api/compiler-hooks/

sync插件用法及原理:

      1、事件注册

usage : compiler.hooks.beforeRun.tab( option , fn ) 

option : String || Object = { name:xxx , before:String || [] , stage:number }

option支持String或Object格式,如果传入对象,必须写name属性,相当于string;before:注册的插件在哪些插件的前面,值可为string=>xxxplugin.name或者 [xxxplugin.name,xxxplugin2.name,...arg];stage:权重,权重大的排在事件管理中心的后面,默认stage=0。

      2、事件触发

      compiler.hooks.beforeRun.callAsync(compiler,()=>{})

    基本原理:

        

相关文章

  • webpack-plugin篇

    2、webpack核心模块——tapable tapable 是 webpack 的一个核心工具,但也可用于其他地...

  • sentry 上传 source map 踩坑备忘录

    第一步:webpack plugin 选择 @sentry/webpack-plugin 与 webpack-se...

  • webpack-plugin

    DefinePlugin 描述 DefinePlugin 是 webpack 内置的插件,可以使用 webpack...

  • npm & yarn 常用命令

    安装 安装开发依赖:只在开发环境用到的包,比如各种 loader、webpack-plugin、babel、esl...

  • webpack-plugin相关介绍

    #### html-webpack-plugin 插件 ------ 1. 为html文件中引入的外部资源如scr...

  • [webpack-plugin] html-webpack-pl

    在探究使用 webpack 打包代码时,如果你开发的是单页面富应用如 create-react-app,使用的模式...

  • [webpack-plugin] webpack-dev-ser

    当你使用 webpack 打包你的项目代码时,如果你不希望每次都运行 npm run build 然后再刷新网页来...

  • [webpack-plugin] clean-webpack-p

    由于我们在学习 webpack 或管理发布更新的项目过程中,需要频繁地调用 npm run build 命令以生成...

  • git命令运用

    基础篇 远程篇 分支篇 提交篇 冲突篇 回滚篇 删除篇 查看篇

  • 孙子兵法//十三篇

    始计篇、作战篇、谋攻篇、军形篇、兵势篇、虚实篇、军争篇、九变篇、行军篇、地形篇、九地篇、火攻篇与用间篇。

网友评论

      本文标题:webpack-plugin篇

      本文链接:https://www.haomeiwen.com/subject/ubvkfktx.html