Worklet: addModule()-Methode
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Die addModule()
-Methode der Worklet
-Schnittstelle lädt das Modul in der angegebenen JavaScript-Datei und fügt es dem aktuellen Worklet
hinzu.
Syntax
addModule(moduleURL)
addModule(moduleURL, options)
Parameter
moduleURL
-
Ein
String
, der die URL einer JavaScript-Datei mit dem hinzuzufügenden Modul enthält. options
Optional-
Ein Objekt mit einer der folgenden Optionen:
credentials
-
Ein
Request.credentials
-Wert, der angibt, ob Anmeldeinformationen (z.B. Cookies und HTTP-Authentifizierung) beim Laden des Moduls gesendet werden sollen. Kann einer der Werte"omit"
,"same-origin"
oder"include"
sein. Standardmäßig auf"same-origin"
gesetzt. Siehe auchRequest.credentials
.
Rückgabewert
Ein Promise
, das aufgelöst wird, sobald das Modul von der angegebenen URL hinzugefügt wurde. Das Versprechen gibt keinen Wert zurück.
Ausnahmen
Wenn addModule()
fehlschlägt, lehnt es das Versprechen ab und übergibt einen der folgenden Fehler an den Ablehnungshandler.
AbortError
DOMException
-
Das angegebene Skript ist ungültig oder konnte nicht geladen werden.
SyntaxError
DOMException
-
Die angegebene
moduleURL
ist ungültig.
Beispiele
AudioWorklet-Beispiel
const audioCtx = new AudioContext();
const audioWorklet = audioCtx.audioWorklet;
audioWorklet.addModule("modules/bypassFilter.js", {
credentials: "omit",
});
PaintWorklet-Beispiel
CSS.paintWorklet.addModule(
"https://mdn.github.io/houdini-examples/cssPaint/intro/worklets/hilite.js",
);
Sobald das Skript zum paint worklet hinzugefügt wurde, kann die CSS-paint()
-Funktion verwendet werden, um das vom Worklet erstellte Bild einzubinden:
@supports (background-image: paint(id)) {
h1 {
background-image: paint(hollow-highlights, filled, 3px);
}
}
Spezifikationen
Specification |
---|
HTML # dom-worklet-addmodule-dev |