手写笔+缓存不允许格式化字符串

时间:2014-10-15 11:31:27

标签: caching media-queries stylus

根据this文章

,我不明白为什么会出现这种情况
+media(s("'(min-width: %spx)'", $max-padding)) // doesn't work
+media('(max-width: ' + $max-padding + 'px)') // sloppy but works

top在命令行中编译正确的东西,但+缓存不接受它

1 个答案:

答案 0 :(得分:1)

这是因为s()输出literal令牌而不是string令牌。修复它的最简单方法是确保$condition mixin中的media是一个字符串,这样你就可以添加

$condition = '' + $condition

在它开始时,然后按照您使用它的方式使用s(),但没有额外的引号:

+media(s("(min-width: %spx)", $max-padding))

另外,提示:有一个%运算符几乎与s()完全相同,但可以更干净,加上apply_media_cache mixin足够聪明,所以你可以省略括号:

+media("min-width: %spx" % $max-padding)