// Controller
this._display = 'HH:mm';
this._picker = 'HH:mm';
this._control = /* Basic angular form control with value */
// View
<ion-datetime [displayFormat]="_display" [pickerFormat]="_picker" [formControl]="_control"></ion-datetime>
如果this._control.value
为空,我希望选择器在未设置this._control.value
的情况下显示未来3小时的时间。
有没有办法实现这个目标?
我尝试按照here的步骤操作,但它不起作用:
// Controller
setDefaultDate() {
this._tmpDefaultDate = moment().add(3, 'hours').format('YYYY-MMM-DD HH:mm:ss');
}
cancel() {
if(!this._control.value) {
this._tmpDefaultDate = '';
}
}
// View
<ion-datetime [displayFormat]="_display" [pickerFormat]="_picker" [formControl]="_control" [(ngModel)]="_tmpDefaultDate" (ionCancel)="cancel()" (tap)="setDefaultDate()"></ion-datetime>
答案 0 :(得分:0)
如果我理解,您想要在单击取消按钮时重置小时,请使用FormGroup尝试此代码。
控制器:
this.mainForm = formBuilder.group({
_tmpDefaultDate: moment().add(3, 'hours').format('YYYY-MMM-DD HH:mm:ss');
});
cancel() {
this.mainForm.patchValue({
_tmpDefaultDate: moment().add(3, 'hours').format('YYYY-MMM-DD HH:mm:ss');
});
}
页:
<ion-datetime [displayFormat]="_display" [pickerFormat]="_picker" formControlName="_tmpDefaultDate" (ionCancel)="cancel()"></ion-datetime>