【问题标题】:How to use plugin globalization in ionic3 and angular5如何在 ionic 3 和 angular 5 中使用插件全球化
【发布时间】:2019-07-22 15:54:20
【问题描述】:

我想获取我的设备语言并按设备语言翻译内容。

我引用https://ionicframework.com/docs/v3/native/globalization/ 并尝试使用它。

这是我的 app.module.ts

import { HttpClient,HttpClientModule} from '@angular/common/http';
import { TranslateLoader, TranslateModule} from '@ngx-translate/core';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
import { Globalization } from '@ionic-native/globalization'

export function createTranslateLoader(http:HttpClient){
  return new TranslateHttpLoader(http, './assets/i18n/','.json')
}
   . . .
  imports: [
    TranslateModule.forRoot({
      loader: {
          provide: TranslateLoader,
          useFactory:(createTranslateLoader),
          deps: [HttpClient]
      }
  })
  ],
  providers: [
    Globalization
  ]

这是我的 app.component.ts

import { Globalization } from '@ionic-native/globalization'
import { TranslateService } from '@ngx-translate/core';

constructor(public Translate:TranslateService,private global: Globalization) {
    platform.ready().then(() => {
    this.Translate.setDefaultLang('EN');
    this.global.getPreferredLanguage()
    .then(res => console.log(res))
    .catch(e => console.log(e));
    });
  }
}

这是我的家.html

 <ion-title> {{'HOME.TITLE'  | translate}} </ion-title>
 <h2>  {{'HOME.CONTENT' |  translate}}</h2>

这是我的 Package.json

{"@angular/core": "5.2.11"
 "@angular/http": "5.2.11"
"@ionic-native/globalization": "^4.20.0"
"@ngx-translate/core": "^9.1.1"
"@ngx-translate/http-loader": "^4.0.0"
"cordova-plugin-globalization": "^1.11.0"
"description": "An Ionic project",
  "cordova": {
    "plugins": {
      "cordova-plugin-globalization": {}
    }
  }

它只显示默认语言(EN),我希望它通过我选择的设备语言翻译其他语言。请告诉我如何解决它或提供一些示例。

【问题讨论】:

    标签: ionic3


    【解决方案1】:

    您指的是 Ionic V4 文档,而不是指 Ionic V3 文档

    V3 DOC

    ionic cordova plugin add cordova-plugin-globalization
    npm install --save @ionic-native/globalization@4
    

    https://ionicframework.com/docs/v3/developer-resources/ng2-translate/

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

    【讨论】:

    • "@ionic-native/globalization": "^5.10.0" 安装 4
    • 现在我重新安装“@ionic-native/globalization”到4.20,我的应用程序显示的语言是使用setDefaultLang('EN')获得的,但我希望它用设备语言翻译其他语言由我选择。
    • 我猜原因是,我没有做任何事情来使插件工作,所以插件似乎不起作用。
    • 该插件用于获取用户的区域语言、日期和时区、货币等信息。tutorialspoint.com/cordova/cordova_globalisation.htm
    • 您要更改应用语言吗?
    猜你喜欢
    • 2020-03-10
    • 2018-06-21
    • 2023-03-11
    • 1970-01-01
    • 2018-02-17
    • 1970-01-01
    • 1970-01-01
    • 2018-08-06
    • 1970-01-01
    相关资源
    最近更新 更多