angular - 在角度上动态更改 LOCALE_ID
问题描述
例如,FB 区域设置支持 100 种语言环境。我们如何在 Angular 上实现这样的功能?这是否意味着我们必须在开发时注册所有支持的语言环境?
有没有一种方法可以在没有硬编码设置的情况下更改角度上的 LOCALE_ID,如下所示,并且还可以动态更改它。我只是在更改日期时间和数字格式之后,目前不需要语言/文本翻译。
从“@angular/common/locales/de”导入 localeFr;registerLocaleData(localeFr, "de")
示例 https://stackblitz.com/edit/angular-dynamic-locale-ywninm?file=src%2Fapp%2Fapp.module.ts
解决方案
恐怕默认的 angular i18n 是以您需要为每个语言环境构建 angular 应用程序包的方式制作的。然后,这些 /locales 数据将由 angular 自动导入。如果它不适合你,请使用不同的 i18n lib,最流行的 angular 是 ngx-translate
推荐阅读
- c# - EF Core 2.1 在分组后进行子查询和聚合时在本地进行评估
- entity-framework - 在程序集中找不到迁移配置类型
- javascript - 在 node.js 上提取 zip 文件卡在 Windows 上
- r - 根据两个 data.frames 创建 data.frame
- dart - 将 onTap 监听器添加到 appBar (Flutter)
- node.js - 使用 mongo 生成动态字段(无聚合)
- java - Java接口方法调用
- javascript - 在不停止 Node.js 的情况下测试对象是否未定义
- javascript - 从离子项目中的打字稿调用javascript函数
- c - 半右倒金字塔