Skip to content

Commit 7b1e6f1

Browse files
committed
1 parent 4f9543a commit 7b1e6f1

File tree

1 file changed

+22
-17
lines changed

1 file changed

+22
-17
lines changed

lib/loader.js

+22-17
Original file line numberDiff line numberDiff line change
@@ -64,23 +64,28 @@ module.exports = function(content, map) {
6464
"[" + JSON.stringify(importItem.export) + "] + \"";
6565
}
6666

67-
cssAsString = cssAsString.replace(result.importItemRegExpG, importItemMatcher.bind(this)).replace(result.urlItemRegExpG, function(item) {
68-
var match = result.urlItemRegExp.exec(item);
69-
var idx = +match[1];
70-
var urlItem = result.urlItems[idx];
71-
var url = urlItem.url;
72-
idx = url.indexOf("?#");
73-
if(idx < 0) idx = url.indexOf("#");
74-
var urlRequest;
75-
if(idx > 0) { // idx === 0 is catched by isUrlRequest
76-
// in cases like url('webfont.eot?#iefix')
77-
urlRequest = url.substr(0, idx);
78-
return "\" + require(" + loaderUtils.stringifyRequest(this, urlRequest) + ") + \"" +
79-
url.substr(idx);
80-
}
81-
urlRequest = url;
82-
return "\" + require(" + loaderUtils.stringifyRequest(this, urlRequest) + ") + \"";
83-
}.bind(this));
67+
if(!query.hasOwnProperty('import')) {
68+
cssAsString = cssAsString.replace(result.importItemRegExpG, importItemMatcher.bind(this));
69+
}
70+
if(!query.hasOwnProperty('url')) {
71+
cssAsString = cssAsString.replace(result.urlItemRegExpG, function(item) {
72+
var match = result.urlItemRegExp.exec(item);
73+
var idx = +match[1];
74+
var urlItem = result.urlItems[idx];
75+
var url = urlItem.url;
76+
idx = url.indexOf("?#");
77+
if(idx < 0) idx = url.indexOf("#");
78+
var urlRequest;
79+
if(idx > 0) { // idx === 0 is catched by isUrlRequest
80+
// in cases like url('webfont.eot?#iefix')
81+
urlRequest = url.substr(0, idx);
82+
return "\" + require(" + loaderUtils.stringifyRequest(this, urlRequest) + ") + \"" +
83+
url.substr(idx);
84+
}
85+
urlRequest = url;
86+
return "\" + require(" + loaderUtils.stringifyRequest(this, urlRequest) + ") + \"";
87+
}.bind(this));
88+
}
8489

8590

8691
var exportJs = compileExports(result, importItemMatcher.bind(this), camelCaseKeys);

0 commit comments

Comments
 (0)