angular - ¿Cómo cambio el idioma del selector de fechas de npx bootstrap a pt-br?
Estoy haciendo un proyecto en Angular 4, instalé el ngx bootstrap y el selector de fechas está en inglés. Inserté las siguientes líneas en app.module.ts:
import { defineLocale } from 'ngx-bootstrap/chronos';
import { ptBrLocale } from 'ngx-bootstrap/locale';
defineLocale('pt-br', ptBrLocale);
Luego fui al componente de la página donde estoy llamando a mi selector de fechas, hice las importaciones y declaré:
import { Component, OnInit } from '@angular/core';
import { BsDatepickerConfig, BsLocaleService } from 'ngx-bootstrap/datepicker';
import { listLocales } from 'ngx-bootstrap/chronos';
y
@Component({
selector: 'demo-datepicker-change-locale',
templateUrl: './cancelar-agendamentos-consulta.component.html'
})
export class DemoDatepickerChangeLocaleComponent {
locale = 'pt-br';
locales = listLocales();
constructor(private _localeService: BsLocaleService) {
}
applyLocale(pop: any) {
this._localeService.use(this.locale);
pop.hide();
pop.show();
}
}
Y aún así no funcionó. ¿Qué estoy haciendo mal?
Respuesta #1
El problema con tu código es que pusiste la llamada para cambiar la configuración regional dentro de otra función y no la estás llamando.
Intenta eliminar la función applyLocale y poner la llamada a change the locale dentro del constructor así:
@Component({
selector: 'demo-datepicker-change-locale',
templateUrl: './cancelar-agendamentos-consulta.component.html'
})
export class DemoDatepickerChangeLocaleComponent {
locale = 'pt-br';
locales = listLocales();
constructor(private _localeService: BsLocaleService) {
this._localeService.use(this.locale);
}
}
Respuesta #2
Así que quería que el idioma fuera italiano y cambié el idioma con este código:
Importé:
import { BsLocaleService, defineLocale, itLocale } from 'ngx-bootstrap';
Código en example.component.ts
// set language of datepicker
setDatepickerLanguage() {
defineLocale('it', itLocale);
this.localeService.use('it');
}
y llamó a la función en el constructor() y funcionó.
Captura de pantalla:
