Angular 如何使用ngx translate翻译alertController和mat snackbar消息?
我正在创建ionic 4 angular应用程序,并使用ngx translate翻译一种或多种语言。通过使用ngx translate,很容易在html中翻译。但是如何翻译alertController和mat snackbar消息中的文本消息Angular 如何使用ngx translate翻译alertController和mat snackbar消息?,angular,typescript,angular-material,ionic4,ngx-translate,Angular,Typescript,Angular Material,Ionic4,Ngx Translate,我正在创建ionic 4 angular应用程序,并使用ngx translate翻译一种或多种语言。通过使用ngx translate,很容易在html中翻译。但是如何翻译alertController和mat snackbar消息中的文本消息 //using below ngx-translate import { TranslateService } from '@ngx-translate/core'; constructor(public translate:Translate
//using below ngx-translate
import { TranslateService } from '@ngx-translate/core';
constructor(public translate:TranslateService){}
//Alert Controller
async alert_Massage() {
let alertMassage = await this.alertController.create({
message: "How are you ?",//how to translate this message.
buttons: ['Ok'],
});
await alertMassage.present();
}
//mat-snackbar //how to translate this some error message
this.snackBar.open('Some Error messages', 'Ok', {
verticalPosition: 'top',
duration: 2000,
panelClass: ['red-snackbar']
});
您可以从以下服务获取翻译:
const translations = await this.translate.get([ 'How are you?' ])}).toPromise();
let alertMassage = await this.alertController.create({
message: translations['How are you?'].
buttons: ['Ok'],
});
await alertMassage.present();
这不是翻译。相同的消息显示在警报“你好吗?”中。如果使用默认翻译,则为。如果要更改语言,应将其设置为:translate.use(translate.getBrowserLang().match(/en | fr | hu/)?translate.getBrowserLang():'en');我有两个json文件,第一个是英文,第二个是西班牙文。我写的是英语和西班牙语键值翻译。在获取翻译之前调用以获取西班牙语翻译:this.translate.use('es');我明白,谢谢。