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 des PaymentManager Interfaces delegiert die Verantwortung für das Bereitstellen verschiedener Teile der erforderlichen Zahlungsinformationen an die Zahlungs-App, anstatt sie vom Browser (zum Beispiel über Autofill) zu sammeln.

Zum Beispiel, wenn die Option requestShipping im Optionsobjekt auf true gesetzt ist, wenn der PaymentRequest() Konstruktor aufgerufen wird, wird eine Lieferadresse zurückgegeben.

  • Wenn enableDelegations() benutzt wurde, um shippingAddress zu delegieren, wird diese Adresse von der Zahlungs-App bereitgestellt.
  • Andernfalls wird sie vom Browser-Autofill bereitgestellt.

Syntax

js
enableDelegations(delegations)

Parameter

delegations Optional

Ein Array, das einen oder mehrere aufgezählte Werte enthält, die die Zahlungsinformationen angeben, die Sie an die Zahlungs-App delegieren möchten. Mögliche Werte sind:

payerEmail

Die Zahlungs-App wird die E-Mail-Adresse des Zahlers bereitstellen, wenn sie benötigt wird.

payerName

Die Zahlungs-App wird den Namen des Zahlers bereitstellen, wenn er benötigt wird.

payerPhone

Die Zahlungs-App wird die Telefonnummer des Zahlers bereitstellen, wenn sie benötigt wird.

shippingAddress

Die Zahlungs-App wird die Lieferadresse bereitstellen, wenn sie benötigt wird.

Rückgabewert

Ein Promise, der 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

Siehe auch