Skip to content

Commit 89272ff

Browse files
committed
refactor: call filenameTemplate option from new function
1 parent 2677255 commit 89272ff

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

Diff for: src/index.js

+5-3
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ const REGEXP_CHUNKHASH = /\[chunkhash(?::(\d+))?\]/i;
1717
const REGEXP_CONTENTHASH = /\[contenthash(?::(\d+))?\]/i;
1818
const REGEXP_NAME = /\[name\]/i;
1919
const REGEXP_PLACEHOLDERS = /\[(name|id|chunkhash)\]/g;
20+
const DEFAULT_FILENAME = '[name].css';
2021

2122
class CssDependency extends webpack.Dependency {
2223
constructor(
@@ -122,7 +123,8 @@ class MiniCssExtractPlugin {
122123
constructor(options) {
123124
this.options = Object.assign(
124125
{
125-
filename: '[name].css',
126+
filename: DEFAULT_FILENAME,
127+
filenameTemplate: () => options.filename || DEFAULT_FILENAME,
126128
},
127129
options
128130
);
@@ -195,8 +197,8 @@ class MiniCssExtractPlugin {
195197
renderedModules,
196198
compilation.runtimeTemplate.requestShortener
197199
),
198-
filenameTemplate:
199-
this.options.filenameTemplate || this.options.filename,
200+
filenameTemplate: ({ chunk: chunkData }) =>
201+
this.options.filenameTemplate(chunkData),
200202
pathOptions: {
201203
chunk,
202204
contentHashType: MODULE_TYPE,

Diff for: test/cases/filenameTemplate/webpack.config.js

+1-2
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ module.exports = {
1717
},
1818
plugins: [
1919
new Self({
20-
filenameTemplate: ({ chunk }) =>
21-
`${chunk.name.replace('/js/', '/css/')}.css`,
20+
filenameTemplate: ({ name }) => `${name.replace('/js/', '/css/')}.css`,
2221
}),
2322
],
2423
};

0 commit comments

Comments
 (0)