1

我使用ng2-translate来翻译我的angular2网络应用中的标题和文本。 但是我现在很困惑,当我试图翻译从.ts文件传递的文本。例如,
我可以在html文件中翻译文本,如下所示。使用ng2-translate翻译文本

<ion-row id="login-row"> 
     <ion-col> 
     <ion-list> 
      <ion-item> 
      <ion-label stacked>{{ 'USERNAME' | translate }}</ion-label> 
      <ion-input type="text" [(ngModel)]="username"></ion-input> 
      </ion-item> 
      <ion-item> 
      <ion-label stacked>{{ 'PASSWORD' | translate }}</ion-label> 
      <ion-input type="password" [(ngModel)]="password"></ion-input> 
      </ion-item> 
     </ion-list> 
     </ion-col> 
    </ion-row> 

但是,如果我有.ts文件的文本如下。然后,我如何翻译这些文本。

doCheckbox() { 
    let alert = this.alertCtrl.create(); 
    alert.setTitle('Please Select a Location'); 

    alert.addInput({ 
     type: 'radio', 
     label: 'Option 1', 
     value: 'opt1', 
     checked: true 
    }); 

    alert.addInput({ 
     type: 'radio', 
     label: 'Option 2', 
     value: 'opt2' 
    }); 

    alert.addButton({ 
     text: 'OK', 
     handler: data => { 
     this.testRadioOpen = false; 
     this.testRadioResult = data; 
     } 
    }); 
    alert.present(); 
    } 

在上面的例子中,我要像

翻译文本 '请选择地区', '方案1', '方案2', 'OK' ......

如果有人有一个想法来克服这个问题,帮帮我。 谢谢。

回答

1

终于找到了答案。 ng2-translate API已经给出了答案(https://github.com/ocombe/ng2-translate#api)

例如:

this.translate.get("SPANISH") 
     .subscribe((data: string) => { 
      this.selectedLanguage = data; 
     }); 

get()方法返回转换后的字符串或对象(如果我们通过一个字符串数组)

你必须输入ng2-translateimport {TranslateService} from 'ng2-translate;'和定义它你的构造函数。