最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Angular2中如何使用ngx-translate進行國際化

 更新時間:2017年05月21日 14:32:32   作者:justforuse  
本篇文章主要介紹了Angular2中使用ngx-translate進行國際化,具有一定的參考價值,感興趣的小伙伴們可以參考一下

相較于AngularJS中的ng-translate, angular2也有適合自己的國際化模塊,就是ngx-translate。

項目地址:https://github.com/ngx-translate/core

使用angular-cli初始化項目:

ng new my-project 

使用npm安裝ngx-translate模塊

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

在項目的根模塊app.module.ts中引入該模塊

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

export function HttpLoaderFactory(http:Http){
 return new TranslateHttpLoader(http, './assets/i18n/', '.json');
}
@NgModule({
 declarations: [
  AppComponent
 ],
 imports: [
  ...
  TranslateModule.forRoot({
   loader:{
    provide:TranslateLoader,
    useFactory:HttpLoaderFactory,
    deps:[Http]
   }
  }

  )
 ],
 providers: [],
 bootstrap: [AppComponent]
})

在assets文件夾下新建i18n文件夾,并且新建兩個語言的json文件。(比如zh-CN.json和en.json)

json文件是key-value形式的,key值代表要翻譯的字符串,value值為特定語言的翻譯結(jié)果,不用語言的文件一般key值是相同的,只是value值不同。

//zh-CN.json
{
  "welcome":"歡迎使用本應(yīng)用",
  "hello":"你好",
  "get-lang":"獲取語言類型"
}

//en.json
{
  "welcome":"welcome to this app",
  "hello":"Hola"
}

然后在相應(yīng)的組件中使用Translate服務(wù)

import { TranslateService } from '@ngx-translate/core'
@Component({
 ...
})
export class AppComponent {
 constructor(private translate: TranslateService) {
  //添加語言支持
  translate.addLangs(['zh-CN', 'en']);
  //設(shè)置默認語言,一般在無法匹配的時候使用
  translate.setDefaultLang('zh-CN');

  //獲取當前瀏覽器環(huán)境的語言比如en、 zh
  let broswerLang = translate.getBrowserLang();
  translate.use(broswerLang.match(/en|zh-CN/) ? broswerLang : 'zh-CN');
 }

 changeLang(lang) {
  console.log(lang);
  this.translate.use(lang);
 }
 toggleLang() {
  console.log(this.translate.getBrowserLang());
  //獲取語言風格,相當于更詳細的語言類型,比如zh-CN、zh-TW、en-US
  console.log(this.translate.getBrowserCultureLang());
 }
}

示例模板:

<div>
 <h2>{{ title | translate }}</h2>
 <label>
  {{ 'hello' | translate }}
  <select #langSelect (change)="changeLang(langSelect.value)">
   <option *ngFor="let lang of translate.getLangs()" [value]="lang" [selected]="lang === translate.currentLang">{{ lang }}</option>
  </select>
 </label>
</div>
<button (click)="toggleLang()">{{'get-lang' | translate}}</button>

使用方式和angularjs中的ng-translate類似,使用translate管道。

效果:

源碼地址:https://github.com/justforuse/angular2-demo/tree/master/angular-translate

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Angularjs實現(xiàn)上傳圖片預(yù)覽功能

    Angularjs實現(xiàn)上傳圖片預(yù)覽功能

    本文通過實例代碼給大家介紹了Angularjs實現(xiàn)上傳圖片預(yù)覽功能,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-09-09
  • AngularJS學習第一篇 AngularJS基礎(chǔ)知識

    AngularJS學習第一篇 AngularJS基礎(chǔ)知識

    這篇文章主要介紹了AngularJS學習第一篇,分享了有關(guān)AngularJS的基礎(chǔ)知識,主要包括指令、過濾器等,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • angularjs 的數(shù)據(jù)綁定實現(xiàn)原理

    angularjs 的數(shù)據(jù)綁定實現(xiàn)原理

    本篇文章主要介紹了angularjs 的數(shù)據(jù)綁定實現(xiàn)原理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • AngularJS 過濾與排序詳解及實例代碼

    AngularJS 過濾與排序詳解及實例代碼

    這篇文章主要介紹了AngularJS 過濾與排序,這里整理了詳細的資料及簡單實例代碼,有需要的小伙伴可以參考下
    2016-09-09
  • 學習Angularjs分頁指令

    學習Angularjs分頁指令

    這篇文章主要和大家一起學習Angularjs分頁指令,代碼很詳細,文章結(jié)構(gòu)緊湊,感興趣的小伙伴們可以參考一下
    2016-07-07
  • AngularJS過濾器詳解及示例代碼

    AngularJS過濾器詳解及示例代碼

    本文主要介紹AngularJS過濾器,這里整理了詳細的資料和提供了示例代碼及實例效果圖,有興趣的小伙伴可以參考下
    2016-08-08
  • AngularJs 指令詳解及示例代碼

    AngularJs 指令詳解及示例代碼

    本文主要介紹AngularJs 指令的知識,這里整理了詳細的資料和簡單示例代碼幫助大家學習理解應(yīng)用,有興趣的小伙伴可以參考下
    2016-09-09
  • AugularJS從入門到實踐(必看篇)

    AugularJS從入門到實踐(必看篇)

    下面小編就為大家?guī)硪黄狝ugularJS從入門到實踐(必看篇)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 玩轉(zhuǎn)Koa之koa-router原理解析

    玩轉(zhuǎn)Koa之koa-router原理解析

    本文將要分析的是經(jīng)常用到的路由中間件 -- koa-router,詳細的介紹了koa-router概述和實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • AngularJS 中的Promise --- $q服務(wù)詳解

    AngularJS 中的Promise --- $q服務(wù)詳解

    這篇文章主要介紹了AngularJS 中的Promise --- $q服務(wù)詳解方法的相關(guān)資料,需要的朋友可以參考下
    2016-09-09

最新評論

石棉县| 门源| 彭水| 郓城县| 莎车县| 三原县| 铁力市| 漯河市| 蓬安县| 漯河市| 广灵县| 广平县| 崇左市| 平邑县| 永宁县| 齐河县| 景洪市| 翼城县| 当阳市| 额敏县| 凌源市| 临沭县| 越西县| 梁河县| 阿瓦提县| 黄石市| 故城县| 林西县| 太湖县| 云霄县| 金阳县| 安化县| 衡东县| 浦东新区| 来安县| 临桂县| 福州市| 都昌县| 高淳县| 合水县| 嘉善县|