我在特定的.scss文件中发现,只要我在@include span(...)
内拨打@include with-layout(...)
,我就会使用该文件
@include with-layout(10 0 split){ div.header{ @include span(8 of 10); } }
我收到以下错误:
error myFile.scss (org/jruby/RubyArray.java:2339:in `collect': stack level too deep)
这让我相信这些特定的嵌套属性会发生某种无限递归。有谁知道如何解决这个问题,或者嵌套这些@include
语句的正确方法是什么?谢谢!
答案 0 :(得分:1)
你可以发布你的mixin定义吗?
我的猜测是你的span mixin包含一个@content指令,导致无限循环:
您的代码将div.header {}
内容块应用于位于with-layout mixin中的所有@content指令,但如果每个div.header {}
块通过span mixin包含@content指令,则SASS将继续替换每个@content指令带有一个包含@content指令等的div.header。
这可以通过从span mixin中删除@content指令,或者定义一个不包含@content指令的新span mix来解决。