PaymentManager: enableDelegations() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Die enableDelegations() Methode der PaymentManager Schnittstelle delegiert die Verantwortung für die Bereitstellung verschiedener Teile der benötigten Zahlungsinformationen an die Zahlungs-App, anstatt diese vom Browser zu sammeln (zum Beispiel über die automatische Vervollständigung).

Wenn beispielsweise die requestShipping-Option im Optionsobjekt auf true gesetzt ist, wenn der PaymentRequest() Konstruktor aufgerufen wird, wird eine Versandadresse zurückgegeben.

  • Wenn enableDelegations() verwendet wurde, um shippingAddress zu delegieren, kommt diese Adresse von der Zahlungs-App.
  • Andernfalls kommt sie aus der automatischen Vervollständigung des Browsers.

Syntax

js
enableDelegations(delegations)

Parameter

delegations Optional

Ein Array, das einen oder mehrere enumerierte Werte enthält, die angeben, welche Zahlungsinformationen Sie an die Zahlungs-App delegieren möchten. Mögliche Werte können sein:

payerEmail

Die Zahlungs-App wird die E-Mail des Zahlenden bereitstellen, wann immer sie benötigt wird.

payerName

Die Zahlungs-App wird den Namen des Zahlenden bereitstellen, wann immer er benötigt wird.

payerPhone

Die Zahlungs-App wird die Telefonnummer des Zahlenden bereitstellen, wann immer sie benötigt wird.

shippingAddress

Die Zahlungs-App wird die Versandadresse bereitstellen, wann immer sie benötigt wird.

Rückgabewert

Ein Promise, das mit einem Wert von undefined aufgelöst wird.

Beispiele

js
navigator.serviceWorker.register("serviceworker.js").then((registration) => {
  registration.paymentManager.userHint = "Card number should be 16 digits";

  registration.paymentManager
    .enableDelegations(["shippingAddress", "payerName"])
    .then(() => {
      // ...
    });

  // ...
});

Spezifikationen

Specification
Payment Handler API
# dom-paymentmanager-enabledelegations

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch