如何在选择器中使用手写笔变量

How to use a stylus variable in a selector

我想做这样的事情:

for $num in (1..100)
  :scope[md="$num"]
    width: $num + '%'

但它给了我这个

:scope[md="$num"] {
  width: 1%;
}
:scope[md="$num"] {
  width: 2%;
}

如何让 $num 在选择器中也被替换?

你必须使用插值法。在评论中,Jcl 犯了一个小错误,没有删除引号:

手写笔

for $num in (1..100)
  :scope[md={$num}]
    width: $num + '%'

输出

:scope[md=1] {
  width: 1%;
}
:scope[md=2] {
  width: 2%;
}
:scope[md=3] {
  width: 3%;
}
...

如果你想要带引号的输出,你可以这样转义:

:scope[md=\"{$num}\"]