File tree Expand file tree Collapse file tree 4 files changed +18
-2
lines changed Expand file tree Collapse file tree 4 files changed +18
-2
lines changed Original file line number Diff line number Diff line change @@ -65,7 +65,7 @@ var Config = function () {
65
65
[ ] . concat ( files ) . forEach ( function ( file ) {
66
66
var entryFile = Array . isArray ( file ) ? file [ file . length - 1 ] : file ;
67
67
68
- var name = entryFile . replace ( / \. \w + $ / g , '' ) ;
68
+ var name = entryFile ;
69
69
if ( name . indexOf ( './' ) == 0 ) {
70
70
name = name . substring ( 2 ) ;
71
71
} else if ( name [ 0 ] == '/' ) {
Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ module.exports = {
7
7
compiler . plugin ( "compilation" , function ( compilation ) {
8
8
compilation . mainTemplate . plugin ( "asset-path" , function ( path , data ) {
9
9
var extName = '[ext]' ;
10
+ var baseName = '' ;
10
11
if ( data . chunk ) {
11
12
var _module = data . chunk . origins [ 0 ] . module ,
12
13
rawRequest = _module . rawRequest ? _module . rawRequest : _module . dependencies [ _module . dependencies . length - 1 ] . userRequest ;
@@ -23,6 +24,13 @@ module.exports = {
23
24
extName = '.' + targetExtName ;
24
25
}
25
26
} ) ;
27
+
28
+ // 替换[name]为文件名,如index.js:[name][ext] => index[ext]
29
+ baseName = sysPath . basename ( rawRequest , extName ) ;
30
+ baseName = baseName . split ( '.' ) [ 0 ] ;
31
+ if ( baseName ) {
32
+ path = path . replace ( / \[ n a m e \] / g, baseName ) ;
33
+ }
26
34
}
27
35
28
36
return path . replace ( / \[ e x t \] / g, extName ) ;
Original file line number Diff line number Diff line change @@ -59,7 +59,7 @@ class Config {
59
59
[ ] . concat ( files ) . forEach ( ( file ) => {
60
60
const entryFile = Array . isArray ( file ) ? file [ file . length - 1 ] : file
61
61
62
- var name = entryFile . replace ( / \. \w + $ / g , '' ) ;
62
+ var name = entryFile ;
63
63
if ( name . indexOf ( './' ) == 0 ) {
64
64
name = name . substring ( 2 ) ;
65
65
} else if ( name [ 0 ] == '/' ) {
Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ module.exports = {
7
7
compiler . plugin ( "compilation" , function ( compilation ) {
8
8
compilation . mainTemplate . plugin ( "asset-path" , function ( path , data ) {
9
9
let extName = '[ext]' ;
10
+ let baseName = '' ;
10
11
if ( data . chunk ) {
11
12
let module = data . chunk . origins [ 0 ] . module ,
12
13
rawRequest = module . rawRequest
@@ -25,6 +26,13 @@ module.exports = {
25
26
extName = '.' + targetExtName
26
27
}
27
28
} )
29
+
30
+ // 替换[name]为文件名,如index.js:[name][ext] => index[ext]
31
+ baseName = sysPath . basename ( rawRequest , extName ) ;
32
+ baseName = baseName . split ( '.' ) [ 0 ]
33
+ if ( baseName ) {
34
+ path = path . replace ( / \[ n a m e \] / g, baseName ) ;
35
+ }
28
36
}
29
37
30
38
return path . replace ( / \[ e x t \] / g, extName ) ;
You can’t perform that action at this time.
0 commit comments