1
votes

Traduire des chaînes dans le code Angular Typescript

Est-il possible de traduire des chaînes à l'intérieur du code source d'un composant dans Angular6.

F. e.

window.confirm("HELP me");

Je n'ai rien trouvé à part la traduction normale des fichiers HTML ( Angular Docs i18n ).

Merci d'avance


0 commentaires

3 Réponses :



0
votes

J'ai essayé une solution pour cela et cela fonctionne, voici comment je l'ai réussi à traduire mes alertes ngx-toaster qui sont appelées dans mon fichier ts, par exemple j'ai ceci:

<h2 i18n="@@testTitle" #test [hidden]="true">created successfully</h2>

je l'ai converti en ceci

@ViewChild('test') myDivElementRef: ElementRef;
...
constructor(private toastrService: ToastrService) {}
ngOnInit() {
this.toastrService.success(this.myDivElementRef.nativeElement.outerHTML, '', {
  enableHtml :  true
});

et dans mon modèle, je crée un div avec #test reference

ngOnInit() {
 this.toastrService.success('created successfully', '');
}

p >


0 commentaires

0
votes

Dans Material Angular 6:

<pre>
<p [hidden]="true">
   <span #espiontest>{{'Add_Profil_application_lang.Creationeffectuée' | translate}} 
</span>
</p>
</pre>

Déclaration

    this.toastr.successToastr(this.myDivElementRef.nativeElement.outerHTML, null, {enableHTML: true});

dans le constructeur

    constructor(
      public toastr: ToastrManager){
    }

dans votre fonction ou OnInt

     @ViewChild('espiontest') myDivElementRef: ElementRef;

En html, cet élément {{'Add_Profil_application_lang.Creationeffectuà © e' | translate}} est la traduction dans les fichiers ./i19n/en et ./i19n/fr

import { locale as english } from './i19n/en';
import { locale as français } from './i19n/fr';
import { ToastrManager } from 'ng6-toastr-notifications';

p>


0 commentaires