Skip to content

Commit 2005e1a

Browse files
committed
Merge pull request #1 from okmttdhr/fixNestedPath
ネストが深くなった際のワークアラウンドを追加
2 parents d84345d + e63e200 commit 2005e1a

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

lib/loader.js

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,27 @@ module.exports = function(content, map) {
1414
// postcss-spritesに各コンポーネント用のsprite.pngを渡す方法がわからない
1515
if (map) {
1616
var pathtoSprites = path.resolve('client/images/sprites');
17-
var nestedImport = escapeRegexp('../../../styles');
1817
var parsedMap = JSON.parse(map);
1918
var hasSprite = content.match(/url\(client\/images\/sprites/) ? true : false;
20-
var isNested = parsedMap.sources.filter(function(source) {
21-
return source.match(nestedImport)
19+
var nestedImport1 = escapeRegexp('../../../styles');
20+
var nestedImport2 = escapeRegexp('../../../../styles');
21+
var nestedImport3 = escapeRegexp('../../../../../styles');
22+
var isNested1 = parsedMap.sources.filter(function(source) {
23+
return source.match(nestedImport1);
24+
}).length > 0;
25+
var isNested2 = parsedMap.sources.filter(function(source) {
26+
return source.match(nestedImport2);
27+
}).length > 0;
28+
var isNested3 = parsedMap.sources.filter(function(source) {
29+
return source.match(nestedImport3);
2230
}).length > 0;
2331

2432
if (hasSprite) {
25-
if (isNested) {
33+
if (isNested3) {
34+
content = content.replace(/url\(client\/images\/sprites\//g, 'url(../../../../../images/sprites/');
35+
} else if (isNested2) {
36+
content = content.replace(/url\(client\/images\/sprites\//g, 'url(../../../../images/sprites/');
37+
} else if (isNested1) {
2638
content = content.replace(/url\(client\/images\/sprites\//g, 'url(../../../images/sprites/');
2739
} else {
2840
content = content.replace(/url\(client\/images\/sprites\//g, 'url(../../images/sprites/');

0 commit comments

Comments
 (0)