Angular 4 的国际化
Internationalization with Angular 4
我需要为我的 Angular 4 添加多语言支持 Application.I 需要知道实现此目的的最佳方法。
你可以使用ngx-translate,它是Angular 2+
中国际化的标准库
您可以导入库并创建一组包含翻译的 json 文件并将其放入资产文件夹中。
那你就可以在HTML里引用了。举个例子。
en.json
有,
"guest.first-name": "first Name",
其中第一个是键,第二个是要显示的值。
你可以在 html 中引用
<input [label]="'guest.first-name' | translate" type="text" name="form_name" [(ngModel)]="firstName" required="required" ></input>
你可以使用我用过的 ngx-translate 库,它对 Angular.Also 的国际化非常有用 我建议你 Angular,你应该检查 jhipster 项目,然后你可以了解更多关于 Angular 4 和 Spring Boot.It 的高级和详细主题是非常有用的项目,你也可以快速创建 Angular 和 Spring 引导项目...
如果您使用 angular-cli 创建新应用程序,它有一个很好的翻译基础设施,使用 ngx-translate。并使用管道翻译您的文本:翻译如下:
<span>{{ text | translate }}</span>
翻译文件存在于 /src/assets/i18n/langCode.json(例如:en.json)。和主布局构造函数中的初始化要求
constructor(public translate: TranslateService, zone: NgZone) {
translate.use('en');
}
你也可以做一件简单的事情,制作各种文件,如en.json等,由各种标签组成,如
en.json
{
lbl_name1: "Lable Name 1",
lbl_name2: "Lable Name 2"
}
现在写一个读取文件的机制,对于 Angular 6 我们可以在您的 abc.ts 文件中使用 http 客户端 &将数据放入会话存储
public languageVar: any = [];
//Http Client can be used and you can pass the file name at runtime also, I have
passed it statically
this.httpClientObj.get(en.json).suscribe({
data=> {
//setting into session for further use into app
window.localstorage.setItem('langLables',JSON.stringify(data));
//setting into the variable declared above
this.languageVar = JSON.parse(window.getItem('langLables'));
},
error=>{
alert("File not found");
}
}
);
现在假设您有一个 html 文件,abc.html,使用单向绑定
<h1>{{languageVar.lbl_name1}}</h1>
<p>{{languageVar.lbl_name2}}</p>
我需要为我的 Angular 4 添加多语言支持 Application.I 需要知道实现此目的的最佳方法。
你可以使用ngx-translate,它是Angular 2+
中国际化的标准库您可以导入库并创建一组包含翻译的 json 文件并将其放入资产文件夹中。
那你就可以在HTML里引用了。举个例子。
en.json
有,
"guest.first-name": "first Name",
其中第一个是键,第二个是要显示的值。 你可以在 html 中引用
<input [label]="'guest.first-name' | translate" type="text" name="form_name" [(ngModel)]="firstName" required="required" ></input>
你可以使用我用过的 ngx-translate 库,它对 Angular.Also 的国际化非常有用 我建议你 Angular,你应该检查 jhipster 项目,然后你可以了解更多关于 Angular 4 和 Spring Boot.It 的高级和详细主题是非常有用的项目,你也可以快速创建 Angular 和 Spring 引导项目...
如果您使用 angular-cli 创建新应用程序,它有一个很好的翻译基础设施,使用 ngx-translate。并使用管道翻译您的文本:翻译如下:
<span>{{ text | translate }}</span>
翻译文件存在于 /src/assets/i18n/langCode.json(例如:en.json)。和主布局构造函数中的初始化要求
constructor(public translate: TranslateService, zone: NgZone) {
translate.use('en');
}
你也可以做一件简单的事情,制作各种文件,如en.json等,由各种标签组成,如
en.json
{
lbl_name1: "Lable Name 1",
lbl_name2: "Lable Name 2"
}
现在写一个读取文件的机制,对于 Angular 6 我们可以在您的 abc.ts 文件中使用 http 客户端 &将数据放入会话存储
public languageVar: any = [];
//Http Client can be used and you can pass the file name at runtime also, I have
passed it statically
this.httpClientObj.get(en.json).suscribe({
data=> {
//setting into session for further use into app
window.localstorage.setItem('langLables',JSON.stringify(data));
//setting into the variable declared above
this.languageVar = JSON.parse(window.getItem('langLables'));
},
error=>{
alert("File not found");
}
}
);
现在假设您有一个 html 文件,abc.html,使用单向绑定
<h1>{{languageVar.lbl_name1}}</h1>
<p>{{languageVar.lbl_name2}}</p>