角11已经内置支持i18n。当在angular.json配置文件中进行配置时,这是非常有效的。我的工作是大型项目,其中有多个子项目在单一的单一。我们正在使用Nrwl workspace.json来配置项目。问题是workspace.json对i18n有不同的语法,而且它似乎与angular.json的语法不兼容。此外,NX文档非常简短(几乎不存在),考虑到i18n。
结果是,目前我的应用程序没有本地化。
有什么办法让i18n在NRWL内部工作吗?
提前谢谢你。
发布于 2021-03-02 08:10:59
经过几次尝试,我找到了一种如何使它工作的方法。
因此,有几个步骤,如何使角的i18n工作在NRWL工作空间。
步骤1)在默认构建目标中定义多个区域设置
"targets": {
"build": {
"executor": "@angular-devkit/build-angular:browser",
"options": {
// … options not relevant to i18n removed
"i18nMissingTranslation": "warning",
"localize": ["fr", "en", "sp"]
},步骤2)为每个区域设置定义命名的构建目标
"configurations": {
"production": {
// ... some prod settings
},
"en": {
"localize": ["en"]
},
"fr": {
"localize": ["fr"]
}
},步骤3)更新服务配置以使用特定的构建目标注意到指示nx使用特定构建目标的appname:build:en
"serve": {
"executor": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "appname:build:en"
}
}步骤4)运行nx服务以验证其工作
有更多细节的完整文章在这里- http://blog.davidjs.com/2021/03/working-with-angular-i18n-inside-nrwl-nx-workspace/。
https://stackoverflow.com/questions/66133990
复制相似问题