在Webpack的文档中列出了此代码段。我想知道callback()函数实际上是做什么的。
function MyPlugin() {
this.startTime = Date.now();
this.prevTimestamps = {};
}
MyPlugin.prototype.apply = function(compiler) {
compiler.plugin('emit', function(compilation, callback) {
var changedFiles = Object.keys(compilation.fileTimestamps).filter(function(watchfile) {
return (this.prevTimestamps[watchfile] || this.startTime) < (compilation.fileTimestamps[watchfile] || Infinity);
}.bind(this));
this.prevTimestamps = compilation.fileTimestamps;
callback();
}.bind(this));
};
module.exports = MyPlugin;
答案 0 :(得分:1)
这是来自Webpack @ v2,但我相信它解释并适用于:
https://webpack.js.org/pluginsapi/compiler/
编译器公开了一个run方法,它启动了webpack的所有编译工作。完成后,它应该调用传入的回调函数。记录统计信息和错误的所有尾端工作都在此回调函数中完成。