CustomFunction<sync>

CustomFunction<sync extends "sync" | "async">: ((args: Value[]) => PromiseOr<Value, sync>)

Typenparameter

Typdeklaration

    • (args: Value[]): PromiseOr<Value, sync>
    • Ein Callback, der eine benutzerdefinierte Sass-Funktion implementiert. Dieser kann an functions übergeben werden.

      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);
      }
      }
      });

      Wirft

      any - Diese Funktion kann einen Fehler auslösen, den der Sass-Compiler als fehlgeschlagenen Funktionsaufruf behandelt. Wenn das Ausnahmeobjekt eine message-Eigenschaft hat, wird diese als Nachricht der umschlossenen Ausnahme verwendet; andernfalls wird die toString()-Methode des Ausnahmeobjekts verwendet. Das bedeutet, dass benutzerdefinierte Funktionen auch einfach nur Strings auslösen können.

      Parameter

      Gibt PromiseOr<Value, sync> zurück.

      Das Ergebnis der Funktion. Dies kann in Form eines Promise vorliegen, aber wenn dies der Fall ist, kann die Funktion nur an compileAsync und compileStringAsync übergeben werden, nicht an compile oder compileString.