前言
plugin是 webpack 的 支柱 功能。webpack 自身也是构建于,你在 webpack 配置中用到的相同的plugin系统之上!plugin目的在于解决 loader 无法实现的其他事。
个人认为webpack最令人惊喜功能之一的是其plugin系统,webpack在构建过程中,提供了一系列的hooks给开发者,开发者可以注册各类各样的函数在hooks上以达到目的。这里是webpack plugin hooks的文档:
compiler-hooks
compilation-hooks
本篇文章用自己做的一个小工具来展示如何编写一个plugin。
示例
源代码
const client = require("./scp.js");
const fs = require("fs");
const { resolve } = require("path");
const zlib = require("zlib");
const compressing = require("compressing");
class cdScp {
constructor(option) {
this.path = option.path;
this.sshOption = option.ssh;
}