@warn
Beim Schreiben von Mixins und Funktionen möchten Sie möglicherweise Benutzer davon abhalten, bestimmte Argumente oder Werte zu übergeben. Sie übergeben möglicherweise veraltete Argumente, die jetzt als veraltet gelten, oder sie rufen Ihre API auf eine Weise auf, die nicht ganz optimal ist.
Die Regel @warn ist genau dafür konzipiert. Sie wird als @warn <Ausdruck> geschrieben und gibt den Wert des Ausdrucks (normalerweise eine Zeichenkette) für den Benutzer aus, zusammen mit einer Stapelverfolgung, die angibt, wie das aktuelle Mixin oder die Funktion aufgerufen wurde. Im Gegensatz zur Regel @error stoppt sie Sass jedoch nicht vollständig.
SCSS-Syntax
$known-prefixes: webkit, moz, ms, o;
@mixin prefix($property, $value, $prefixes) {
@each $prefix in $prefixes {
@if not index($known-prefixes, $prefix) {
@warn "Unknown prefix #{$prefix}.";
}
-#{$prefix}-#{$property}: $value;
}
#{$property}: $value;
}
.tilt {
// Oops, we typo'd "webkit" as "wekbit"!
@include prefix(transform, rotate(15deg), wekbit ms);
}
Sass-Syntax
$known-prefixes: webkit, moz, ms, o
@mixin prefix($property, $value, $prefixes)
@each $prefix in $prefixes
@if not index($known-prefixes, $prefix)
@warn "Unknown prefix #{$prefix}."
-#{$prefix}-#{$property}: $value
#{$property}: $value
.tilt
// Oops, we typo'd "webkit" as "wekbit"!
@include prefix(transform, rotate(15deg), wekbit ms)
CSS-Ausgabe
.tilt {
-wekbit-transform: rotate(15deg);
-ms-transform: rotate(15deg);
transform: rotate(15deg);
}
Das genaue Format der Warnung und der Stapelverfolgung variiert von Implementierung zu Implementierung. So sieht es in Dart Sass aus
Warning: Unknown prefix wekbit.
example.scss 6:7 prefix()
example.scss 16:3 root stylesheet