webpack插件的格式很简单,实现一个带有apply方法的对象即可,例:
class MyPlugin {/*** Apply the plugin* @param {Compiler} compiler Webpack Compiler* @returns {void}*/apply(compiler) {compiler.hooks.compilation.tap("MyPlugin",(compilation) => {// TODO: 插件的操作});}}
插件的原理很简单,在webpack初始化参数的时候,将插件注册在webpack的相应的钩子上(compiler.hooks.xxx),在不同阶段去调用达到最终的目的
webpack的钩子在webpack原理里有介绍
