如何解决Angular Decimal Pipe 语言环境取决于浏览器
我在我的 Angular 应用程序中使用 DecimalPipe 来显示数字,但问题是十进制管道的默认语言环境是“en-us”。因此,一百万的格式为
1,000,000
。然而,我是欧洲人,我希望它是 1 000 000
。简单地在十进制管道中硬编码语言环境不是一种选择,因为我确实希望美国人在他们的语言环境中显示它,而欧洲人在我们的语言环境中显示它。
建议使用 LOCALE_ID
的一些解决方案。例如
constructor(
@Inject(LOCALE_ID) public locale: string
) { }
即使我的浏览器在荷兰语中排在第一位(未指定国家/地区),在英语中排在第二位(也未指定国家/地区),但默认为“en-us”。建议的其他一些解决方案
providers: [ { provide: LOCALE_ID,useValue: 'fr' } ]
但话说回来,这是硬编码的,我需要它依赖于浏览器。另一种解决方案是通过 Navigator.language
请求用户的语言,但这通常只是一种语言,没有国家/地区,也没有区域设置。
我如何请求语言环境并回退例如'en-us' 什么时候找不到?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。