Spec-Zone.ru › Web APIs

PaymentMethodChangeEvent: свойство methodDetails

Ограниченная доступность

Эта функция не является базовой, так как она не работает во всех распространённых браузерах.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.

Только для чтения methodDetails свойство интерфейса PaymentMethodChangeEvent — это объект, содержащий любые данные, которые обработчик платежей может предоставить для описания изменения способа оплаты пользователем. Значение равно null , если подробности отсутствуют.

Значение

Объект, содержащий любые данные, необходимые для описания изменений способа оплаты. Содержимое зависит от выбранного способа оплаты, поэтому сначала необходимо обратиться к свойству methodName, а затем интерпретировать methodDetails.

Значение по умолчанию — null, указывая на то, что дополнительные сведения недоступны.

Примеры

В этом примере используется событие paymentmethodchange для отслеживания изменений в выбранном способе оплаты для Apple Pay, чтобы вычислить скидку, если пользователь выберет карту Visa в качестве способа оплаты.

request.onpaymentmethodchange = (ev) => {
  const { type: cardType } = ev.methodDetails;
  const newStuff = {};
  if (ev.methodName === "https://apple.com/apple-pay") {
    switch (cardType) {
      case "visa": {
        // do Apple Pay specific handling for Visa card…
        // methodDetails contains the card information
        const discount = calculateDiscount(ev.methodDetails);
        Object.assign(newStuff, discount);
        break;
      }
    }
  }
  // finally…
  ev.updateWith(newStuff);
};
const response = await request.show();

Обратите внимание, что свойство methodDetails используется функцией calculateDiscount() для вычисления скидки на оплату, а затем вызывается updateWith() для обновления события с вычисленным обновлением.

Спецификации

Спецификация
Payment Request API
# dom-paymentmethodchangeevent-methoddetails

Совместимость с браузерами

Рабочий стол Мобильный
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
methodDetails 76 79 55 63 12.1 76 Нет 54 12.2 12.0 Нет

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PaymentMethodChangeEvent/methodDetails

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API