Кто должен определять шаблон даты для ngx-bootstrap Daterangepicker?

Я использую patter date для bsDatepicker и работаю нормально.

<input type="text" class="form-control" formControlName="birthday" bsDatepicker [bsConfig]="bsConfig" [(bsValue)]="birthday" value="{{dataNascimento | date:'dd/MM/yyyy - dd/MM/yyyy' }}" />

Но в bsDaterangepicker не работает

<input class="form-control" #drp="bsDaterangepicker" bsDaterangepicker [bsConfig]="bsConfig" [maxDate]="bsConfig.maxDate" value="{{periodo | date:'dd/MM/yyyy - dd/MM/yyyy' }}" />

Сообщение об ошибке

ERROR Error: InvalidPipeArgument: 'Wed Nov 22 2017 12:50:19 GMT-0200 (Horário brasileiro de verão),Wed Nov 22 2017 12:50:19 GMT-0200 (Horário brasileiro de verão)' for pipe 'DatePipe'

Версии ngx-bootstrap, Angular и Bootstrap:

ngx-bootstrap: 2.0.0-beta.8

Угловая: 5.0.0

Bootstrap: 3.3.7

Система сборки: угловой CLI 1.5.2

Вопрос

Кто должен определять шаблон даты для Daterangepicker?

1 ответ

Может быть, это тоже будет работать. Вы можете использовать в HTML:

<input class="form-control" bsDaterangepicker id="rangedagte" type="text" [bsConfig]="bsConfig" [(ngModel)]="bsRangeValue" (bsValueChange)="selectRange($event)" />

В ассортименте они имеют rangeInputFormat свойство с вашим форматом в bsConfig мы можем настроить.

export class DateComponent implements OnInit {

initialDate = new Date();
  bsRangeValue: Date[];
  maxDate = new Date();
  bsConfig: Partial<BsDatepickerConfig> = new BsDatepickerConfig();

constructor() {
    this.maxDate.setDate(this.maxDate.getDate() + 7);
    this.bsRangeValue = [this.initialDate, this.maxDate];
  }

  ngOnInit() {
    this.bsConfig = Object.assign({}, { showWeekNumbers: false, containerClass: 'theme-blue', rangeInputFormat: 'DD/MMM/YYYY' });

   }
}

Да, потому что для диапазона они имеют rangeInputFormat свойство с вашим форматом т.е. rangeInputFormat: 'DD-MM-YYY'

https://valor-software.com/ngx-bootstrap/

Другие вопросы по тегам