PaymentMethodChangeEvent:methodName 属性
PaymentMethodChangeEvent
接口的只读methodName
属性是一个字符串,用于唯一标识用户当前选择的支付处理程序。支付处理程序可以是支付技术,例如 Apple Pay 或 Android Pay,并且每个支付处理程序可以支持多种支付方式;PaymentMethodChangeEvent
描述了支付处理程序内支付方式的更改。
值
一个唯一标识当前选定支付处理程序的字符串。这可以是标准化支付方式标识符列表中选择的字符串,也可以是支付处理服务使用的 URL。有关更多信息,请参阅支付方式标识符。
默认值为空字符串""
。
示例
此示例使用paymentmethodchange
事件来监视 Apple Pay 选择的支付方式的更改,以便在用户选择使用 Visa 卡作为其支付方式时计算折扣。
js
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();
请注意,calculateDiscount()
函数正在使用methodDetails
属性来计算任何支付折扣,然后调用updateWith()
来使用计算出的更新来更新事件。
规范
规范 |
---|
支付请求 API # dom-paymentmethodchangeevent-methodname |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。