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() для обновления события с вычисленным обновлением.
Спецификации
Совместимость с браузерами
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 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