2013-02-16 32 views
9

我在自己的(某種)SASS/COMPASS「框架」上工作。COMPASS/SASS如何內插變量到@import「sprite/*。png」路徑?

我設置了一個變量 - $ sprite - 這是存儲所有圖像的文件夾的名稱。

我這樣做,所以後來我可以使用該名稱替換圖像混合和精靈生成。

如果@import「#{$ sprite}/*。png」正在工作,那麼一切都會很棒。

任何想法?

//sprite images folder name 
     $sprite: "sprite"; 

    //settings 
     $sprite-sprite-base-class: ".#{$sprite}" - *works*; 
     $sprite-spacing: 20px; 
     $sprite-sprite-dimensions: true; 

    //generate sprite 
     @import "sprite/*.png"; - normal path - *works* 
     @import "#{$sprite}/*.png" - path with a variable in it - *doesn't work* 

    //mixin   
     @mixin replace-with-image($imageName){ 
      @include replace-text-with-dimensions("#{$sprite}/#{$imageName}.png"); 
      @extend %dis-ib; 
     } - *works* 
+1

看起來像指南針[只支持插入非常狹窄的進口](https://github.com/nex3/sass/issues/49) – steveax 2013-02-16 18:59:19

回答

3

恐怕這根本是不可能的時刻(也永遠不會是因爲它從the issue that steveax posted看起來)。如果你真的想要這個,你必須編寫你自己的小預處理程序來解析你的變量,然後把它輸出到.sass/.scss文件。或者,提交一個功能請求...