缺少区域设置“de-DE”的区域设置数据
Posted
技术标签:
【中文标题】缺少区域设置“de-DE”的区域设置数据【英文标题】:Missing locale data for the locale "de-DE" 【发布时间】:2021-02-02 12:53:28 【问题描述】:我正在使用 Angular 9
在我的一个组件中,我使用如下货币格式:
import formatCurrency from '@angular/common';
formatCurrency(23456, 'de-DE', '$')
在这里,如果我将 de-DE 作为文化传递,我会收到如下错误:
但是,如果我将文化作为 en-DE 传递,它就可以正常工作。
这里有什么问题?请帮忙。
【问题讨论】:
【参考方案1】:默认情况下,angular 仅包含英语的语言环境数据。
如果您希望它工作,您将需要导入并注册正确的语言环境。
import registerLocaleData from '@angular/common';
import localeDe from '@angular/common/locales/de';
import localeDeExtra from '@angular/common/locales/extra/de';
registerLocaleData(localeDe, 'de-DE', localeDeExtra);
那么你应该可以使用它了。
在你的 app.module.ts 中注册语言环境是最有意义的
【讨论】:
这里我们从 '@angular/common/locales/extra/de' 加载 localeDeExtra 但我如何动态加载它?我从 API 获取文化代码,在这种情况下如何从文化代码中获取额外的? 如果不使用延迟加载,就无法动态加载它,所有导入都需要在编译时知道。您可以从这里导入所有语言环境:import '@angular/common/locales/global' 对于延迟加载,看看这个方法:angulararchitects.io/aktuelles/…以上是关于缺少区域设置“de-DE”的区域设置数据的主要内容,如果未能解决你的问题,请参考以下文章
怎么用条件格式将一个区域设置为渐变填充蓝色(标准色)数据条?