Angular: creando una aplicación multilenguaje - PPROF2-2022ProgWeb/g05-aula2-gestiondesposito-g05 GitHub Wiki
Dentro de la carpeta del proyecto de Angular, abro la terminal y ejecuto el comando npm i @ngx-translate/core --save
Verifico la modificación de los jacson en el IDE
Con el comando npm i @ngx-translate/http-loader --save
Importamos estas tres librerías
import { TranslateLoader, TranslateModule } from '@ngx-translate/core'; import { TranslateHttpLoader } from '@ngx-translate/http-loader'; import { HttpClient, HttpClientModule } from '@angular/common/http';
//AOT Sopoerte de compilacion
export function httpTranslateLoader(http:HttpClient) { return new TranslateHttpLoader(http);
}
imports: [ BrowserModule, AppRoutingModule, HttpClientModule, TranslateModule.forRoot({ loader: { provide: TranslateLoader, useFactory: httpTranslateLoader, deps: [HttpClient] } }) ],
Paso 5: crear una carpeta dentro de assets con el nombre i18n y los archivos con los idiomas que necesites traducir
- em.json
{ "Idioma":"Title", "TextoIdioma":"English" }
es.json
{ "Idioma":"Título", "TextoIdioma":"Español" }
ir a los componentes y cargamos la libreria y el contrucytor
libreia
import { TranslateService } from '@ngx-translate/core';
constructor
constructor( public translate: TranslateService ) { translate.addLangs(['en', 'es']); const lang = translate.getBrowserLang() if( (lang !== 'es') && ( lang !== 'en') ){ translate.setDefaultLang('en'); } }
dentro del nava agrego el siguiente codigo
{{ language }}