全网整合营销服务商

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

免费咨询热线: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 


相关文章: 文字头像制作网站推荐软件,醒图能自动配文字吗?  网站制作新手教程,新手建设一个网站需要注意些什么?  定制建站哪家更专业可靠?推荐榜单揭晓  建站之星×万网:智能建站系统+自助建站平台一键生成  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何在IIS中新建站点并配置端口与IP地址?  贸易公司网站制作流程,出口贸易网站设计怎么做?  高端企业智能建站程序:SEO优化与响应式模板定制开发  北京建设网站制作公司,北京古代建筑博物馆预约官网?  广州建站公司哪家好?十大优质服务商推荐  如何高效完成独享虚拟主机建站?  如何在企业微信快速生成手机电脑官网?  如何通过虚拟主机快速完成网站搭建?  如何用免费手机建站系统零基础打造专业网站?  如何用美橙互联一键搭建多站合一网站?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  南宁网站建设制作定制,南宁网站建设可以定制吗?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  如何在云主机上快速搭建网站?  如何选择PHP开源工具快速搭建网站?  网站制作网站,深圳做网站哪家比较好?  如何在服务器上三步完成建站并提升流量?  魔方云NAT建站如何实现端口转发?  制作网站公司那家好,网络公司是做什么的?  Android使用GridView实现日历的简单功能  网站制作公司广州有几家,广州尚艺美发学校网站是多少?  常州自助建站费用包含哪些项目?  企业网站制作公司网页,推荐几家专业的天津网站制作公司?  如何通过西部数码建站助手快速创建专业网站?  制作农业网站的软件,比较好的农业网站推荐一下?  如何用PHP快速搭建高效网站?分步指南  nginx修改上传文件大小限制的方法  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  Swift中循环语句中的转移语句 break 和 continue  建站之星安装模板失败:服务器环境不兼容?  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?  无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?  电商平台网站制作流程,电商网站如何制作?  招商网站制作流程,网站招商广告语?  建站168自助建站系统:快速模板定制与SEO优化指南  微课制作网站有哪些,微课网怎么进?  家庭服务器如何搭建个人网站?  如何快速生成专业多端适配建站电话?  如何用已有域名快速搭建网站? 

您的项目需求

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