2014-09-29 55 views
0

我已經在我與工作每當我打電話@include span(...)@include with-layout(...)內特定.scss文件時發現,像這樣的錯誤「堆棧級別太深」編譯青菜嵌套調用SUSY

 
@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

你確定它發生在你嵌套這些?我無法用列出的代碼重新創建您的問題。即使是[更深層嵌套的示例](http://sassmeister.com/gist/3aa06f85e62e73b9b7c0)也適用於Sassmeister。 – 2014-09-29 20:20:56

回答

1

你可以發佈你的mixin定義嗎?
我的猜測是,你的跨度混入含有@content指令,從而導致一個無限循環:

您的代碼應用div.header {}內容塊到位於與佈局混入所有@content指令,但如果每個div.header {}塊包含通過span mixin的@content指令,SASS將繼續用包含@content指令的div.header替換每個@content指令等。

這可以通過從您的跨度mixin,或者定義一個不包含@content指令的新的span mixin。

+0

with-layout和span只是簡單的mixin,是SUSY的一部分。你可以在這裏找到他們的文檔: http://susy.readthedocs.org/en/latest/ – 2014-09-29 19:15:40

+0

哦,我錯過了,我的錯誤。在我認爲是罪魁禍首的@content指令的範圍定義中,請參見第29-34行:https://github.com/ericam/susy/blob/88c58978f8ff9334577e3a002f46a425b01a16c7/sass/susy/language/susy/_span.scss – rsynnest 2014-09-29 19:24:28

+0

不是肯定如何解決,但我會研究嵌套上下文:http://susy.readthedocs.org/en/latest/toolkit/#nested-context – rsynnest 2014-09-29 19:30:45