【发布时间】:2018-04-05 04:45:41
【问题描述】:
我在 mat-radio-group 中有一个 matdatepicker 作为选项之一。当用户选择日期时,该值应作为单选按钮的值传递,我该怎么做。现在我有 datechange 和 dateinput 事件,它们传递值并在打字稿端对其进行格式化。有什么简单的方法可以做到这一点。我只是以日期/月/年格式显示的日期,不需要任何其他数据。 代码如下:
<mat-radio-group formControlName="installType">
<mat-radio-button value="8555">8555 - Delay Crew</mat-radio-button>
<mat-radio-button value="9000">9000 - Self Install</mat-radio-button>
<mat-radio-button [value] = "dp" (click)="datePicker.open()">
<mat-input-container>
<input matInput [matDatepicker]="datePicker" placeholder="Post Date">
<mat-datepicker-toggle matSuffix [for]="datePicker">
<mat-icon matDatepickerToggleIcon></mat-icon>
</mat-datepicker-toggle>
<mat-datepicker #datePicker (dateInput)="addEvent($event)"
(dateChange)="addEvent($event)" ></mat-datepicker>
</mat-input-container>
</mat-radio-button>
</mat-radio-group>
这是打字稿部分:
export class AddsaleComponent implements OnInit {
form: FormGroup;
dp: any;
formatDate(date: Date) {
const day = date.getDate();
const month = date.getMonth() + 1;
const year = date.getFullYear();
return `${day}/${month}/${year}`;
}
constructor(private wos: WorkorderService) {}
ngOnInit() {
this.form = new FormGroup({
installType: new FormControl('', Validators.required),
})
}
onSale(form) {
this.wos.postWorkOrder(this.form.value);
}
addEvent(event: MatDatepickerInputEvent<Date>) {
this.dp = this.formatDate(event.value);
}
}
【问题讨论】:
-
你能把
ts的文件也发一下吗? -
@bugs,我用打字稿编辑了原始帖子。谢谢。
-
这里有人可以回答这个帖子吗?谢谢