安全上下文
此特征只可用于
安全上下文
(HTTPS),在某些或所有
支持浏览器
.
这是
实验性技术
检查
浏览器兼容性表格
要小心谨慎在生产中使用这之前。
shippingAddress
只读特性在
PaymentRequest
interface returns the shipping address provided by the user. It is
null
在默认情况下。
var paymentAddress = PaymentRequest.shippingAddress;
Generally, the user agent will fill the
shippingAddress
property value. You can trigger this by setting
PaymentOptions.requestShipping
to
true
when calling the
PaymentRequest
构造函数。
In the example below, the cost of shipping varies by geography. When the
PaymentRequest.onshippingaddresschange
is called,
updateDetails()
is called to update the details of the
PaymentRequest
,使用
shippingAddress
to set the correct shipping cost.
// Initialization of PaymentRequest arguments are excerpted for the sake of
// brevity.
var payment = new PaymentRequest(supportedInstruments, details, options);
payment.addEventListener('shippingaddresschange', function(evt) {
evt.updateWith(new Promise(function(resolve) {
updateDetails(details, request.shippingAddress, resolve);
}));
});
payment.show().then(function(paymentResponse) {
// Processing of paymentResponse exerpted for brevity.
}).catch(function(err) {
console.error("Uh oh, something bad happened", err.message);
});
function updateDetails(details, shippingAddress, resolve) {
if (shippingAddress.country === 'US') {
var shippingOption = {
id: '',
label: '',
amount: {currency: 'USD', value: '0.00'},
selected: true
};
if (shippingAddress.region === 'MO') {
shippingOption.id = 'mo';
shippingOption.label = 'Free shipping in Missouri';
details.total.amount.value = '55.00';
} else {
shippingOption.id = 'us';
shippingOption.label = 'Standard shipping in US';
shippingOption.amount.value = '5.00';
details.total.amount.value = '60.00';
}
details.displayItems.splice(2, 1, shippingOption);
details.shippingOptions = [shippingOption];
} else {
delete details.shippingOptions;
}
resolve(details);
}
| 规范 | 状态 | 注释 |
|---|---|---|
|
支付请求 API
The definition of 'shippingaddress' in that specification. |
候选推荐 | 初始定义。 |
No compatibility data found. Please contribute data for "api.PaymentRequest.shippingAddress" (depth: 1) to the MDN 兼容性数据存储库 .
PaymentRequest