Hola, estoy tratando de aprender SASS / SCSS y estoy tratando de refactorizar mi propio mixin para clearfix
lo que me gustaría es que la mezcla se base en si paso la mezcla en un ancho.
pensamientos hasta ahora (pseudocódigo solo ya que incluiré otros mixins)
@mixin clearfix($width) {
@if !$width {
// if width is not passed, or empty do this
} @else {
display: inline-block;
width: $width;
}
}
así es como pensé que podría llamarlo, pero no funciona.
@include clearfix();
o
@include clearfix(100%)
o
@include clearfix(960px)
¡Agradecería cualquier ayuda sobre la mejor manera o la forma correcta de hacer esto!
conditional
mixins
sass
if-statement
Clairesuzy
fuente
fuente
Respuestas:
Puedes probar esto:
No estoy seguro del resultado deseado, pero establecer un valor predeterminado debería devolver falso.
fuente
" "
pero me gusta más el valor automático :) - no necesité establecer la variable, aunque la puse en la sintaxis mixin como valor predeterminado@mixin clearfix($width: auto) {...
gracias :)Puede asignar valores de parámetros predeterminados en línea cuando crea el mixin por primera vez:
fuente
Puede predeterminar el parámetro en
null
ofalse
.De esta manera, sería más corto probar si se ha pasado un valor como parámetro.
fuente