2017-02-11 39 views
0

我嘗試將我所有的工作流程從Sass傳遞到Stylus,但是我無法轉換函數。Sass/Stylus轉換函數迭代

這裏是青菜功能

@mixin setIconInclude($icon) { 
     @each $s in $ws_icon-list { 
      @if nth($s, 1) == $icon { 
        content: nth($s, 2); 
      } 
     } 
} 

我手寫筆試過,但它不工作

setIconInclude($icon) 
    for $s in $ws_icon-list 
    if foo $s 0 == icon 
     content foo $s 1 

編輯:

我的列表我在另一個文件中定義的圖標。

$ws_icon-list =  "iconName1" "\f105", 
        "iconName2" "\e81f", 
        "iconName3" "\e820" 

隨着我想要實現的功能,我希望能夠在觸控筆來訪問它(SASS函數工作),但我不明白的語法。

$icon是我想要在列表中定義的圖標的第一個參數。

+0

嘗試更加具體的關於「不行」。你能給出一個具體的例子輸入,預期的和實際的輸出嗎? – IMSoP

回答

1

您可以使用$s[0]$s[1]代替nth($s, 1)nth($s, 2),因爲手寫筆列表是從零開始:

$ws_icon-list = "iconName1" "\f105", 
       "iconName2" "\e81f", 
       "iconName3" "\e820" 

setIconInclude($icon) 
    for $s in $ws_icon-list 
    if $s[0] == $icon 
     content: $s[1] 

body 
    setIconInclude('iconName1') 
+0

非常感謝!我在其他測試中遇到了類似的情況,但沒有奏效。用你的解決方案,這太棒了!非常感謝你 – Jeremy