无法在无法使用i18n的角度7中进行文件本地化/翻译
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法在无法使用i18n的角度7中进行文件本地化/翻译相关的知识,希望对你有一定的参考价值。
我已经构建了一个Angular 7应用程序。现在,我们计划以多种语言支持它。问题在于我们根据API调用在页面上显示的成功/失败消息。为此,我们使用一个定义了变量id的全局文件。如何转换此文件,并按语言环境在应用程序中使用。目前,我正在将文件导入到任何地方,就像这样。
从'/ globalModule / globalMsg'导入{GlobalMsg};
并且使用类似的errorMsg = GlobalMsg.errorMsg;
文件'globalMsg'的定义如下。
导出类GlobalMsg {
// Global Msgs
public static errorMsg = 'Some error occured';
}
谢谢。
答案
而不是将翻译后的字符串保留在GlobalMsg文件中,而是使用翻译键对其进行更新。
export class GlobalMsg {
public static errorMsg = "global.errorMsg"
}
在每个语言环境JSON的转换JSON文件中,使用相应的定义定义这些键
en.json
{
global.errorMsg: "Invalid data"
}
fr.json
{
global.errorMsg: "Données invalides"
}
<p [innerHTML]="errorMsg | translate"></p>
以上是关于无法在无法使用i18n的角度7中进行文件本地化/翻译的主要内容,如果未能解决你的问题,请参考以下文章
select2 + requirejs:无法捆绑 i18n 文件