Skip to content

Commit e527020

Browse files
chicoxyzzyTheLarkInn
authored andcommitted
refactor(es6): Upgrade AutomaticPrefetchPlugin to es6 (webpack#3682)
1 parent ec7d3e8 commit e527020

1 file changed

Lines changed: 29 additions & 28 deletions

File tree

lib/AutomaticPrefetchPlugin.js

Lines changed: 29 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,35 @@
22
MIT License http://www.opensource.org/licenses/mit-license.php
33
Author Tobias Koppers @sokra
44
*/
5-
var async = require("async");
6-
var PrefetchDependency = require("./dependencies/PrefetchDependency");
7-
var NormalModule = require("./NormalModule");
5+
"use strict";
86

9-
function AutomaticPrefetchPlugin() {}
10-
module.exports = AutomaticPrefetchPlugin;
11-
AutomaticPrefetchPlugin.prototype.apply = function(compiler) {
12-
compiler.plugin("compilation", function(compilation, params) {
13-
var normalModuleFactory = params.normalModuleFactory;
7+
const async = require("async");
8+
const PrefetchDependency = require("./dependencies/PrefetchDependency");
9+
const NormalModule = require("./NormalModule");
10+
11+
class AutomaticPrefetchPlugin {
12+
apply(compiler) {
13+
compiler.plugin("compilation", (compilation, params) => {
14+
const normalModuleFactory = params.normalModuleFactory;
1415

15-
compilation.dependencyFactories.set(PrefetchDependency, normalModuleFactory);
16-
});
17-
var lastModules = null;
18-
compiler.plugin("after-compile", function(compilation, callback) {
19-
lastModules = compilation.modules.filter(function(m) {
20-
return m instanceof NormalModule;
21-
}).map(function(m) {
22-
return {
23-
context: m.context,
24-
request: m.request
25-
};
16+
compilation.dependencyFactories.set(PrefetchDependency, normalModuleFactory);
17+
});
18+
let lastModules = null;
19+
compiler.plugin("after-compile", (compilation, callback) => {
20+
lastModules = compilation.modules
21+
.filter(m => m instanceof NormalModule)
22+
.map(m => ({
23+
context: m.context,
24+
request: m.request
25+
}));
26+
callback();
2627
});
27-
callback();
28-
});
29-
compiler.plugin("make", function(compilation, callback) {
30-
if(!lastModules) return callback();
31-
async.forEach(lastModules, function(m, callback) {
32-
compilation.prefetch(m.context || compiler.context, new PrefetchDependency(m.request), callback);
33-
}, callback);
34-
});
35-
};
28+
compiler.plugin("make", (compilation, callback) => {
29+
if(!lastModules) return callback();
30+
async.forEach(lastModules, (m, callback) => {
31+
compilation.prefetch(m.context || compiler.context, new PrefetchDependency(m.request), callback);
32+
}, callback);
33+
});
34+
}
35+
}
36+
module.exports = AutomaticPrefetchPlugin;

0 commit comments

Comments
 (0)