2013-11-21 8 views
11

Ich erstelle ein Font-Modul, das alle meine Webfonts und einige Sass Mixins enthält, um die @font-face Deklarationen zu schreiben. Die Hauptmischung wird etwas wie includeFont(name, weight, style) sein.Benutzerdefinierte Fehler/Warnungen in Sass werfen

Ich werde eine Aufzeichnung in einigen Sass-Variable (n) davon, welche Schriftarten mit welchen Gewichten und Stilen tatsächlich verfügbar sind, und durch clever sein denke ich kann ich die Mixin schreiben, so dass ich erkennen kann, wenn ich es versuche und eine Schriftart anfordern, die nicht existiert.

Aber wenn ich diese Situation erkenne, wie kann ich einen Fehler werfen?

+0

Haben Sie versucht, in der Dokumentation suchen? http://sass-lang.com/documentation/file.SSASS_REFERENCE.html#_5 – cimmanon

+1

Ich tat, aber ich habe dieses Bit vermisst - danke – wheresrhys

Antwort

5

Ab Sass 3.4.0, gibt es eine @error Richtlinie Sie können einen schwerwiegenden Fehler verursachen:

$ sass test.scss 
Error: stuff is fubar 
     on line 3 of test.scss 
    Use --trace for backtrace.
:

$stuff: fubar; 
@if ($stuff == fubar) { 
    @error "stuff is fubar"; 
} 

Wenn Sie versuchen, diese an der Schale zu kompilieren, werden Sie die folgende sehen

Es gibt auch verwandte @warn und @debug Direktiven, die in der Sprache länger gewesen sind, falls diese für Sie nützlicher sind. Beispiel:

@debug "stuff is happening"; 
@warn "stuff is happening that probably shouldn't be happening"; 

/* 
    Note that these directives do not terminate execution, and this block 
    will therefore still be output. 
*/ 
* { 
    color: pink; 
} 

Wenn zusammengestellt:

$ sass test2.scss 
test2.scss:1 DEBUG: stuff is happening 
WARNING: stuff is happening that probably shouldn't be happening 
     on line 2 of test2.scss 

/* 
    Note that these directives do not terminate execution, and this block 
    will therefore still be output. 
*/ 
* { 
    color: pink; }