我有一個混合,有一個警衛條款。減少後衛不按預期工作
我按照指南,並相信下面的語法是正確的。
本質上,指南應確保@palette是一系列自定義顏色之一,並且@color來自一組數字。
這個工作 - 它編譯併產生正確的輸出。
但是,如果我更改@palette變量導致錯誤,更少不編譯 - 這是預期的行爲?
.AccentPalette(@palette; @color:500) when
(@palette = amber), (@palette = blue), (@palette = blueGrey), (@palette = cyan), (@palette = deepOrange),
(@palette = deepPurple), (@palette = green), (@palette = grey), (@palette = indigo), (@palette = lightBlue),
(@palette = lightGreen), (@palette = lime), (@palette = orange), (@palette = pink), (@palette = purple),
(@palette = red), (@palette = teal), (@palette = yellow) and
(@color = 50), (@color = 100), (@color = 200), (@color = 300), (@color = 400),
(@color = 500), (@color = 600), (@color = 700), (@color = 800), (@color = 900) {
.Swatch(@palette);
@accentColor:"@{@{color}}";
@accent50: @50;
@accent100: @100;
@accent200: @200;
@accent300: @300;
@accent400: @400;
@accent500: @500;
@accent600: @600;
@accent700: @700;
@accent800: @800;
@accent900: @900;
}
調用這樣的:
.AccentPalette(indigo);
的色板例如 - 有許多其中,一個用於每種顏色。
.Swatch(amber)
{
@50: #fff8e1;
@100:#ffecb3;
@200:#ffe082;
@300:#ffd54f;
@400:#ffca28;
@500:#ffc107;
@600:#ffb300;
@700:#ffa000;
@800:#ff8f00;
@900:#ff6f00;
}
當* Less不能編譯*時,您會收到什麼錯誤? – Justinas
這不是非常有用的信息,它只是給我一個-1,它每隔一次它就不編譯。我正在使用ServiceStack Bundler集成到一個asp.net網站。 –
如果聲明瞭50-900個變量,那麼您在此處發佈的代碼不應導致編譯器錯誤。問題可能出自'.Swatch(...)',你能否在該問題中包含mixin的代碼? – Harry