https://www.webpackjs.com/api/compiler-hooks/

    environment 环境准备好 Sy
    compile 编译开始
    compilation 编译结束
    emit 打包资源到 output 之前
    afterEmit 打包资源到 output 之后
    done 打包完成

    自定义 plugin 语法

    1. // 自定义插件
    2. class MyPlugin {
    3. constructor(options){
    4. console.log('插件选项', options)
    5. }
    6. // 必须带有 apply 方法
    7. apply(compiler){
    8. compiler.hooks.emit.tap('插件名称', (compilation) => {
    9. // compilation 是此次打包的上下文
    10. console.log('webpack 构建过程开始!', compilation)
    11. })
    12. }
    13. }
    14. module.exports = MyPlugin