Skip to content

Commit f352436

Browse files
authored
Merge pull request webpack#6173 from timkendrick/patch-1
Maintain ident when chaining pitching loaders
2 parents c26d1f0 + b48d5d9 commit f352436

File tree

4 files changed

+20
-1
lines changed

4 files changed

+20
-1
lines changed

lib/NormalModuleFactory.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,9 @@ class NormalModuleFactory extends Tapable {
133133
try {
134134
loaders.forEach(item => {
135135
if(typeof item.options === "string" && /^\?/.test(item.options)) {
136-
item.options = this.ruleSet.findOptionsByIdent(item.options.substr(1));
136+
const ident = item.options.substr(1);
137+
item.options = this.ruleSet.findOptionsByIdent(ident);
138+
item.ident = ident;
137139
}
138140
});
139141
} catch(e) {

test/configCases/loaders/generate-ident/d.js

Whitespace-only changes.

test/configCases/loaders/generate-ident/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@ it("should correctly pass complex query object with remaining request", function
22
require("./a").should.be.eql("ok");
33
require("./b").should.be.eql("maybe");
44
require("./c").should.be.eql("yes");
5+
require("./d").should.be.eql("ok");
56
});

test/configCases/loaders/generate-ident/webpack.config.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,22 @@ module.exports = {
4242
}
4343
}
4444
}
45+
},
46+
{
47+
test: /d\.js$/,
48+
use: [
49+
"./loader1",
50+
"./loader1",
51+
"./loader1",
52+
{
53+
loader: "./loader2",
54+
options: {
55+
f: function() {
56+
return "ok";
57+
}
58+
}
59+
}
60+
]
4561
}
4662
]
4763
}

0 commit comments

Comments
 (0)