From e63e200319f506e581c7aa3b16e509517367bf4f Mon Sep 17 00:00:00 2001 From: okmttdhr <10101114fin@gmail.com> Date: Wed, 2 Mar 2016 11:36:05 +0700 Subject: [PATCH] =?UTF-8?q?[change]=E3=83=8D=E3=82=B9=E3=83=88=E3=81=8C?= =?UTF-8?q?=E6=B7=B1=E3=81=8F=E3=81=AA=E3=81=A3=E3=81=9F=E9=9A=9B=E3=81=AE?= =?UTF-8?q?=E3=83=AF=E3=83=BC=E3=82=AF=E3=82=A2=E3=83=A9=E3=82=A6=E3=83=B3?= =?UTF-8?q?=E3=83=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/loader.js | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/lib/loader.js b/lib/loader.js index 50919ccf..c35c8942 100644 --- a/lib/loader.js +++ b/lib/loader.js @@ -14,15 +14,27 @@ module.exports = function(content, map) { // postcss-spritesに各コンポーネント用のsprite.pngを渡す方法がわからない if (map) { var pathtoSprites = path.resolve('client/images/sprites'); - var nestedImport = escapeRegexp('../../../styles'); var parsedMap = JSON.parse(map); var hasSprite = content.match(/url\(client\/images\/sprites/) ? true : false; - var isNested = parsedMap.sources.filter(function(source) { - return source.match(nestedImport) + var nestedImport1 = escapeRegexp('../../../styles'); + var nestedImport2 = escapeRegexp('../../../../styles'); + var nestedImport3 = escapeRegexp('../../../../../styles'); + var isNested1 = parsedMap.sources.filter(function(source) { + return source.match(nestedImport1); + }).length > 0; + var isNested2 = parsedMap.sources.filter(function(source) { + return source.match(nestedImport2); + }).length > 0; + var isNested3 = parsedMap.sources.filter(function(source) { + return source.match(nestedImport3); }).length > 0; if (hasSprite) { - if (isNested) { + if (isNested3) { + content = content.replace(/url\(client\/images\/sprites\//g, 'url(../../../../../images/sprites/'); + } else if (isNested2) { + content = content.replace(/url\(client\/images\/sprites\//g, 'url(../../../../images/sprites/'); + } else if (isNested1) { content = content.replace(/url\(client\/images\/sprites\//g, 'url(../../../images/sprites/'); } else { content = content.replace(/url\(client\/images\/sprites\//g, 'url(../../images/sprites/');