全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Angular4项目中添加i18n国际化插件ngx-translate的步骤详解

前言

本文将介绍在 Angular4 项目中配置 ngx-translate i18n 国际化组件的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍:

npm 安装 ngx-translate 模块

npm install @ngx-translate/core --save
npm install @ngx-translate/http-loader --save

在 Angular 项目配置

app.module.ts

添加

import { TranslateLoader, TranslateModule} from '@ngx-translate/core';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';

 imports: [
 TranslateModule.forRoot({
 loader: {
 provide: TranslateLoader,
 useFactory: (createTranslateHttpLoader),
 deps: [Http]
 }
 })
 ]

结果如下:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { HttpModule, Http } from '@angular/http';
import { TranslateLoader, TranslateModule} from '@ngx-translate/core';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';

import { AppComponent } from './app.component';

export function createTranslateHttpLoader(http: Http) {
 return new TranslateHttpLoader(http, './assets/i18n/', '.json');
}

@NgModule({
 declarations: [
 AppComponent
 ],
 imports: [
 BrowserModule,
 HttpModule,
 TranslateModule.forRoot({
 loader: {
 provide: TranslateLoader,
 useFactory: (createTranslateHttpLoader),
 deps: [Http]
 }
 })
 ],
 providers: [],
 bootstrap: [AppComponent]
})
export class AppModule { }

app.component.ts

添加

import { TranslateService } from "@ngx-translate/core";

 constructor(public translateService: TranslateService) {

 }
 
 ngOnInit() {
 // --- set i18n begin ---
 this.translateService.addLangs(["zh", "en"]);
 this.translateService.setDefaultLang("zh");
 const browserLang = this.translateService.getBrowserLang();
 this.translateService.use(browserLang.match(/zh|en/) ? browserLang : 'zh');
 // --- set i18n end ---
 }

结果如下:

import { Component } from '@angular/core';
import { TranslateService } from "@ngx-translate/core";

@Component({
 selector: 'app-root',
 templateUrl: './app.component.html',
 styleUrls: ['./app.component.css']
})
export class AppComponent {
 title = 'app';

 constructor(public translateService: TranslateService) {

 }

 ngOnInit() {
 // --- set i18n begin ---
 this.translateService.addLangs(["zh", "en"]);
 this.translateService.setDefaultLang("zh");
 const browserLang = this.translateService.getBrowserLang();
 this.translateService.use(browserLang.match(/zh|en/) ? browserLang : 'zh');
 // --- set i18n end ---
 }
}

添加多语言文件

在 src/app/assets/ 下创建 i18n 文件夹,并在文件夹内创建 en.json 和 zh.json 文件

测试

app.component.html

添加代码:

<div>
 <span> test the i18n module: ngx-translate</span>
 <h1>{{ 'hello' | translate }}</h1>
</div>

在 en.json 和 zh.json 文件中添加配置

en.json

{
 "hello": "the word is hello"
}

zh.json

{
 "hello": "你好"
}

测试结果

在中文下

在英文下

示例代码

Github地址:angular + ngx-translate

本地下载地址:http://xiazai./201707/yuanma/james-blog-ui().rar

参考文章

ngx-translate core

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对的支持。


# ngx  # translate  # angular4  # angular  # i18n  # 国际化  # Angular实现的进度条功能示例  # AngularJS实现进度条功能示例  # Spring Boot+AngularJS+BootStrap实现进度条示例代码  # 如何在Angular2中使用jQuery及其插件的方法  # AngularJS中如何使用echart插件示例详解  # 如何在AngularJs中调用第三方插件库  # Angular5中调用第三方js插件的方法  # 详解在Angular项目中添加插件ng-bootstrap  # Angular2整合其他插件的方法  # angular4+百分比进度显示插件用法示例  # 相关内容  # 本地下载  # 如有  # 并在  # 英文  # 这篇文章  # 谢谢大家  # 多语言  # 你好  # useFactory  # provide  # createTranslateHttpLoader  # Http  # deps  # import  # TranslateModule  # TranslateLoader  # TranslateHttpLoader  # forRoot  # imports 


相关文章: 如何配置WinSCP新建站点的密钥验证步骤?  如何通过二级域名建站提升品牌影响力?  大同网页,大同瑞慈医院官网?  如何在建站之星绑定自定义域名?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  建站之星安装后如何自定义网站颜色与字体?  唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱?  如何在IIS7上新建站点并设置安全权限?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  西安大型网站制作公司,西安招聘网站最好的是哪个?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  定制建站价位费用解析与套餐推荐全攻略  如何通过万网虚拟主机快速搭建网站?  宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  无锡营销型网站制作公司,无锡网选车牌流程?  如何选择高效稳定的ISP建站解决方案?  建站10G流量真的够用吗?如何应对访问高峰?  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  IOS倒计时设置UIButton标题title的抖动问题  制作网站外包平台,自动化接单网站有哪些?  免费视频制作网站,更新又快又好的免费电影网站?  网站代码制作软件有哪些,如何生成自己网站的代码?  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  建站主机与虚拟主机有何区别?如何选择最优方案?  小型网站建站如何选择虚拟主机?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  如何在万网主机上快速搭建网站?  行程制作网站有哪些,第三方机票电子行程单怎么开?  建站主机是否属于云主机类型?  北京网站制作的公司有哪些,北京白云观官方网站?  微信小程序 input输入框控件详解及实例(多种示例)  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  PHP 500报错的快速解决方法  php8.4新语法match怎么用_php8.4match表达式替代switch【方法】  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  如何通过VPS建站无需域名直接访问?  如何用花生壳三步快速搭建专属网站?  公司网站设计制作厂家,怎么创建自己的一个网站?  如何通过FTP空间快速搭建安全高效网站?  ,怎么用自己头像做动态表情包?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  焦点电影公司作品,电影焦点结局是什么?  长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?  建站之星代理如何优化在线客服效率?  建站之星后台密码遗忘或太弱?如何重置与强化?  如何使用Golang table-driven基准测试_多组数据测量函数效率  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。