货币显示格式
Hello 支持以下货币显示格式:
symbol
(默认) - 显示本地化的货币符号(例如€123
)。code
- 使用ISO货币代码(例如123 USD
)。name
- 显示本地化的货币名称(例如123 dollars
)。
您可以通过在Zonos.init方法中使用overrideCurrencyFormat
属性来覆盖货币显示格式。此属性接受上述列出的货币显示格式之一。覆盖货币显示格式适用于Hello 和Zonos Checkout。
JavaScript
1
2
3
Zonos.init({
overrideCurrencyFormat: 'code',
});
使用自定义货币转换器
对于仅仅覆盖货币显示格式不足以满足您网站需求的情况,您可以使用自定义货币转换器来处理外币金额的转换和格式化。这种方法使您能够完全控制货币金额在您网站上的显示方式。
要使用自定义货币转换器,您需要在Zonos.init
方法中实现currencyConverter
函数。该函数应接受以下参数:
convertAndFormat
- 一个转换和格式化货币金额的函数。originalAmount
- 原始货币金额。selector
- 包含货币金额的元素的选择器。
当存在时,currencyConverter
函数将循环遍历您网站上所有匹配的价格选择器,并将自定义货币转换逻辑应用于每一个。
使用自定义货币转换器函数的一个常见用例是当您在下拉菜单或其他复杂的HTML元素中显示价格时。例如,如果您有一个下拉菜单,其中每个选项旁边显示价格,如下所示:
HTML
1
2
3
4
5
6
7
8
9
10
11
<select title="Option">
<option className="money" data-select-option="Blue" value="option1">
Blue - $1.99
</option>
<option className="money" data-select-option="Red" value="option2">
Red - $2.00
</option>
<option className="money" data-select-option="Yellow" value="option3">
Yellow - $3.59
</option>
</select>
在这种情况下,您不能直接选择价格,因为旁边有额外的文本。通过使用自定义货币转换器,您可以从元素中提取价格并对其应用货币转换逻辑。
JavaScript
1
2
3
4
5
6
7
8
9
window.Zonos.init({
currencyConverter: ({ convertAndFormat, originalAmount, selector }) => {
const optionValue = selector.getAttribute('data-select-option');
if (optionValue) {
return `${optionValue} - ${convertAndFormat(originalAmount)}`;
}
return convertAndFormat(originalAmount);
},
});
自定义显示货币
覆盖Hello 显示外币金额的方式。您可以通过在JavaScript集成中自定义货币显示格式来调整外币的呈现,以满足您的需求和偏好。