CustomFunction<sync>
型パラメータ
-
sync extends "sync" | "async"
型宣言
-
- (args: Value[]): PromiseOr<Value, sync>
-
カスタム Sass 関数を実装するコールバック。これは functions に渡すことができます。
const result = sass.compile('style.scss', {
functions: {
"sum($arg1, $arg2)": (args) => {
const arg1 = args[0].assertNumber('arg1');
const value1 = arg1.value;
const value2 = args[1].assertNumber('arg2')
.convertValueToMatch(arg1, 'arg2', 'arg1');
return new sass.SassNumber(value1 + value2).coerceToMatch(arg1);
}
}
});スロー
any - この関数はエラーをスローする可能性があり、Sass コンパイラはそれを関数呼び出しの失敗として扱います。例外オブジェクトに `message` プロパティがある場合、それはラップされた例外のメッセージとして使用されます。そうでない場合、例外オブジェクトの `toString()` が使用されます。つまり、カスタム関数はプレーンな文字列をスローしても安全です。
パラメータ
-
args: Value[]
関数呼び出し元によって渡される引数の配列。関数が任意の引数を取る場合、最後の要素は SassArgumentListになります。
戻り値 PromiseOr<Value, sync>
関数の結果。これは `Promise` の形式になる可能性がありますが、その場合、関数は compileAsync と compileStringAsync にのみ渡すことができ、compile や compileString には渡せません。
-
CustomFunction<'sync'>
は同期的に返す必要がありますが、その代わり compile と compileStringに加えて、compileAsync と compileStringAsync に渡すことができます。CustomFunction<'async'>
は同期的にも非同期的にも返すことができますが、compileAsync と compileStringAsyncでのみ使用できます。