我们在我们的应用程序中使用Angular 2.0。在那个应用程序中,我们要给多语言支持。我们知道使用angular 1.0如何实现。但不知道如何在2.0中使用。Angular 2 - 多语言支持
回答
Angular2中的i18n仍在进行中,似乎尚未可用。
我得到了它 - 离子2 |国际化和本地化您的应用角2
http://www.gajotres.net/ionic-2-internationalize-and-localize-your-app-with-angular-2/
我可以推荐ngx-translate库,它很容易集成和使用。
1.通过NPM在app.module.ts进口安装
npm install @ngx-translate/core --save
2.添加TranslateModule
import {TranslateModule} from '@ngx-translate/core';
@NgModule({
declarations: [...],
imports : [TranslateModule.forRoot(), ...],
exports : [...],
providers : [...],
bootstrap : [AppComponent]
})
export class AppModule {}
3. app.components.ts
import {Component} from '@angular/core';
import {TranslateService} from '@ngx-translate/core';
@Component({
selector : 'app',
templateUrl: './app.component.html',
})
export class AppComponent {
constructor(private translate: TranslateService) {
translate.addLangs(['en', 'hy']);
translate.setDefaultLang('en');
translate.use('en');
}
changeLang(lang: string) {
this.translate.use(lang);
}
}
4. app.component.html
<nav>
<a [routerLink]="['/']">
{{ "home" | translate }}
</a>
|
<a [routerLink]="['/about']">
{{ "about" | translate }}
</a>
|
<a [routerLink]="['/contact']">
{{ "contact" | translate }}
</a>
</nav>
<div class="lang-bar">
<a (click)="changeLang('en')">EN</a>
<a (click)="changeLang('hy')">ՀՅ</a>
</div>
5.创建翻译文件夹i18n的
en.json
{
"home" : "Home",
"about" : "About",
"contact" : "Contact"
}
hy.json
{
"home" : "Գլխավոր",
"about" : "Մեր մասին",
"contact" : "Հետադարձ կապ"
}
3. app.components.ts您不需要从'ng2-translate'导入TranslateService,而是从@ ngx-translate/core中导入它 – Jnana
您是否只需要将它添加到应用程序组件或使用它的每个组件中?因为应用程序组件是所有东西的开始 - >所以在我的其他htmls中,我可以假设它已导入? – fangio
@fangio如果你想使用它,你必须导入'''TranslateService''',例如。你想改变当前的语言,检测语言变化或获得翻译。如果你想使用像这样的'''{{“contact”|你不需要在你的组件中从ngx-translate导入任何东西。 – styopdev
- 1. 多语言支持
- 2. 多语言支持
- 3. 在symfony 2中支持多种语言
- 4. JSF 2 - 多语言支持问题
- 5. SEO和多语言支持
- 6. Android多语言和少数语言支持语言不支持语言区域
- 7. iphone多语言支持
- 8. 多语言支持iPhone?
- 9. Spring MVC:多语言支持
- 10. Android多语言支持
- 11. 与多语言支持
- 12. HTML5支持多语言
- 13. QT多语言支持?
- 14. iphone多语言支持
- 15. PHP - 多语言支持
- 16. Mongodb的多语言支持
- 17. Mysql utf8_unicode_ci多语言支持
- 18. Django的多语言支持
- 19. 支持多种语言
- 20. Swift kitura多语言支持
- 21. IntelliJ Angular 2对*语法的HTML支持
- 22. Angular 2支持IE9?
- 23. ,它们支持多国语言</p> <p>多语言支持
- 24. Android语言支持
- 25. PyroCMS语言支持
- 26. EditText语言支持?
- 27. Yocto语言支持
- 28. 支持RTL语言
- 29. ILGeoNames语言支持
- 30. ios中的多语言支持
,它现在可用吗?有没有任何指导方针来做到这一点。 – peaceUser
它可用。检查http://angular.io(我今天就在我的手机上) –
搭配在这方面怎么样照顾。 看起来像我们必须生成.xlf文件并进行渲染。另一种定义为一种JSON并加载它。这是要做的吗?如果需要翻译动态数据,您会喜欢什么? – peaceUser