Stylus - 散列导致错误
Stylus - Hash causing error
我正在尝试在 Stylus 中使用散列来对按钮的所有属性进行分组。这是散列:
global_constants.styl:
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]
我收到这个错误:
ParseError: stylus/global_constants.styl:7:6 3| button-style = 4| { the-font: 200 16px 'Helvetica Neue', Helvetica, Arial,
sans-serif, 5| the-border: 1px solid brand-colour, 6|
the-border-radius: 6px 7| }
-----------^
赋值中的右侧操作数无效,得到 "outdent"
如何消除错误并将所有 button-style
样式应用到 button.multiselect
并将 button-style[font]
应用到 span.multiselect-selected-text
?
我不得不更改缩进以包含与“=”在同一行的左括号,并且还转义字体中的逗号,如下所示:
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
}
}
嗯,你会收到错误消息,因为 ,
是散列键值对的分隔符。您可以使用您的方法(使用 string + unquote
获取实际值),或者您可以使用 \
:
转义逗号
font: 200 16px 'Helvetica Neue'\, Helvetica\, Arial\, sans-serif,
我正在尝试在 Stylus 中使用散列来对按钮的所有属性进行分组。这是散列:
global_constants.styl:
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]
我收到这个错误:
ParseError: stylus/global_constants.styl:7:6 3| button-style = 4| { the-font: 200 16px 'Helvetica Neue', Helvetica, Arial, sans-serif, 5| the-border: 1px solid brand-colour, 6|
the-border-radius: 6px 7| } -----------^赋值中的右侧操作数无效,得到 "outdent"
如何消除错误并将所有 button-style
样式应用到 button.multiselect
并将 button-style[font]
应用到 span.multiselect-selected-text
?
我不得不更改缩进以包含与“=”在同一行的左括号,并且还转义字体中的逗号,如下所示:
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
}
}
嗯,你会收到错误消息,因为 ,
是散列键值对的分隔符。您可以使用您的方法(使用 string + unquote
获取实际值),或者您可以使用 \
:
font: 200 16px 'Helvetica Neue'\, Helvetica\, Arial\, sans-serif,