Dav*_*bec 3 internationalization angular nrwl nrwl-nx
Angular 11 内置了对i18n的支持。angular.json当在配置文件中配置时,这非常有效。我正在开发一个大型项目,其中单个 monorepo 中有多个子项目。我们使用 Nrwl NXworkspace.json来配置项目。问题是workspace.jsoni18n 有不同的语法,并且它似乎与angular.json. 另外,NX 文档关于 i18n 的内容非常简短(几乎不存在)。
结果是目前我的应用程序根本没有本地化。
有什么想法可以让 i18n 在 NRWL NX 中工作吗?
先感谢您。
经过几次尝试,我找到了一种让它发挥作用的方法。
\n因此,如何使 Angular 的 i18n 在 NRWL NX 工作区中工作需要几个步骤。
\n步骤#1) 在默认构建目标中定义多个语言环境
\n"targets": {\n "build": {\n "executor": "@angular-devkit/build-angular:browser",\n "options": {\n // \xe2\x80\xa6 options not relevant to i18n removed\n "i18nMissingTranslation": "warning",\n "localize": ["fr", "en", "sp"]\n },\nRun Code Online (Sandbox Code Playgroud)\n步骤#2) 为每个语言环境定义命名构建目标
\n"configurations": {\n "production": {\n // ... some prod settings\n },\n "en": {\n "localize": ["en"]\n },\n "fr": {\n "localize": ["fr"]\n }\n },\nRun Code Online (Sandbox Code Playgroud)\n步骤 #3) 更新服务配置以使用特定构建目标\n注意appname:build:en- 指示 nx 服务使用特定构建目标
"serve": {\n "executor": "@angular-devkit/build-angular:dev-server",\n "options": {\n "browserTarget": "appname:build:en"\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n步骤#4) 运行 nxserve 来验证其工作
\n包含更多详细信息的完整文章在这里 - http://blog.davidjs.com/2021/03/working-with-angular-i18n-inside-nrwl-nx-workspace/
\n| 归档时间: |
|
| 查看次数: |
5274 次 |
| 最近记录: |