我正在使用React Native开发一个应用程序,我需要同时显示欧元和卢比的货币。
我正在使用Javascript的Intl按照语言环境设置货币格式,使用en-IN
表示卢比,使用en-GB
表示欧元。
,但是货币在iOS和Android上以不同的格式显示,在iOS中,IN可以正确显示IN,例如3,74,73,474
,但在Android上以以下格式显示37,473,474
。不知道我该如何处理。以下是我编写的用于格式化的实用程序功能:
getformattedCurrency(value) {
const formatter = new Intl.NumberFormat('en-IN', {
style: 'currency',
currency: 'INR'
minimumFractionDigits: 0,
maximumFractionDigits: 0,
});
return formatter.format(value);
}
我知道android的本机可以使用DecimalFormat来执行此操作,但是我只想通过JS来实现。
感谢您的帮助!谢谢。
答案 0 :(得分:1)
由于某种原因,它似乎无法从Intl库中选择要使用的脚本。 所以
import 'intl';
import 'intl/locale-data/jsonp/en-IN';
import 'intl/locale-data/jsonp/en';
当您分别导入en-IN时,它可以在android上运行。无法在iPhone上进行测试。