Cześć, próbuję się nauczyć SASS / SCSS i próbuję zreformować mój własny mixin dla clearfix
chciałbym, żeby miksowanie było oparte na tym, czy podam szerokość miksu.
dotychczasowe przemyślenia (tylko pseudokod, ponieważ będę zawierał inne miksy)
@mixin clearfix($width) {
@if !$width {
// if width is not passed, or empty do this
} @else {
display: inline-block;
width: $width;
}
}
tak myślałem, że mogę to nazwać, ale to nie działa.
@include clearfix();
lub
@include clearfix(100%)
lub
@include clearfix(960px)
Byłbym wdzięczny za każdą pomoc w najlepszej lub właściwej drodze, aby to zrobić!
conditional
mixins
sass
if-statement
clairesuzy
źródło
źródło
Odpowiedzi:
Możesz spróbować tego:
Nie jestem pewien co do zamierzonego wyniku, ale ustawienie wartości domyślnej powinno zwrócić fałsz.
źródło
" "
ale bardziej podoba mi się wartość auto :) - nie musiałem ustawiać zmiennej, chociaż umieściłem ją w składni mixin jako domyślną wartość@mixin clearfix($width: auto) {...
dziękuję :)Możesz przypisać domyślne wartości parametrów w tekście podczas tworzenia miksu:
źródło
Możesz ustawić domyślny parametr na
null
lubfalse
.W ten sposób krótsze byłoby sprawdzenie, czy wartość została przekazana jako parametr.
źródło