2017-01-22 12 views
0

Webpackのドキュメントでは、このスニペットがリストされています。コールバック()関数が実際に何をしているのだろうか。Webpackプラグイン開発 - 親関数の引数を呼び出す関数

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; 

答えて

1

これはV2 @ WebPACKのからですが、私はそれが説明と同様に適用されると信じて:

https://webpack.js.org/pluginsapi/compiler/

コンパイラはWebPACKのためのすべてのコンパイル作業をキックスタートrunメソッドを公開します。それが完了すると、渡されたコールバック関数を呼び出す必要があります。このコールバック関数では、統計とエラーのロギングのすべての後処理が行われます。

関連する問題