我正在尝试使用手写笔中的哈希来对按钮的所有属性进行分组。这是哈希:
global_constants.风格:
brand-colour = #FC4747
button-hover-colour = #ff8282
button-style =
{ font: 200 16px 'Helvetica Neue', Helvetica, Arial, sans-serif,
border: 1px solid brand-colour,
border-radius: 6px,
'&:hover': {
background-color: #ff8282
}
}
和客户端(override_multiselect.styl):
@require "global_constants"
button.multiselect
{button-style}
ul.multiselect-container
width 100%
span.multiselect-selected-text
color brand-colour
text-transform uppercase
font button-style[font]
我收到此错误:
解析错误:触笔/global_constants.样式:7:6 3| 按钮样式 = 4| { the-font: 200 16px 'Helvetica Neue', Helvetica, Arial, 无衬线,5| 边框:1px 纯色品牌颜色,6|
边框半径:6px 7| } -----------^赋值中的右侧操作数无效,"缩进"
如何摆脱错误并将所有button-style
样式应用于button.multiselect
并将button-style[font]
应用于span.multiselect-selected-text
?
好吧,你得到错误,因为,
是哈希的键值对的分隔符。您可以使用您的方法(使用字符串 + unquote
来获取实际值),也可以使用 转义逗号:
font: 200 16px 'Helvetica Neue', Helvetica, Arial, sans-serif,
我不得不更改缩进以包含与"="在同一行上的左括号,并且还要在字体中转义我的逗号,如下所示:
brand-colour = #FC4747
button-hover-colour = #ff8282
button-style = { font: 200 16px 'Helvetica Neue', Helvetica, Arial, sans-serif,
border: 1px solid brand-colour,
border-radius: 6px,
height: 64px,
'&:hover': {
background-color: #ff8282
}
}