Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vue-loader
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
pi-plusplus
fork-from-github
vue-loader
Commits
230abd48
Commit
230abd48
authored
Mar 24, 2018
by
Evan You
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: only reuse ident for whitelisted loaders
fix #1214
parent
05dceec2
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
10 deletions
+9
-10
plugin.js
lib/plugin.js
+9
-10
No files found.
lib/plugin.js
View file @
230abd48
...
@@ -121,7 +121,7 @@ function cloneRule (rule, normalizedRule) {
...
@@ -121,7 +121,7 @@ function cloneRule (rule, normalizedRule) {
}
}
return
true
return
true
},
},
use
:
normalizedRule
.
use
?
normalizedRule
.
use
.
map
(
reuse
Ident
)
:
undefined
use
:
normalizedRule
.
use
?
normalizedRule
.
use
.
map
(
clean
Ident
)
:
undefined
})
})
// delete shorthand since we have normalized use
// delete shorthand since we have normalized use
...
@@ -138,16 +138,15 @@ function cloneRule (rule, normalizedRule) {
...
@@ -138,16 +138,15 @@ function cloneRule (rule, normalizedRule) {
return
res
return
res
}
}
// Some loaders like babel-loader passes its own option directly to babel
const
reuseIdentWhitelist
=
/css-loader/
// and since babel validates the options, "ident" would cause an unknown option
// error. For these loaders we'll bail out on the ident reuse.
const
reuseIdentBlackList
=
/babel-loader/
// Reuse options ident, so that imports from within css-loader would get the
function
cleanIdent
(
use
)
{
// exact same request prefixes, avoiding duplicated modules (#1199)
if
(
use
.
ident
)
{
function
reuseIdent
(
use
)
{
if
(
reuseIdentWhitelist
.
test
(
use
.
loader
))
{
if
(
use
.
ident
&&
!
reuseIdentBlackList
.
test
(
use
.
loader
))
{
// Reuse options ident, so that imports from within css-loader would get the
// exact same request prefixes, avoiding duplicated modules (#1199)
use
.
options
.
ident
=
use
.
ident
use
.
options
.
ident
=
use
.
ident
}
delete
use
.
ident
delete
use
.
ident
}
}
return
use
return
use
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment