Кто должен определять шаблон даты для 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'