正確代碼javascript
<form class="pad5" #testform="ngForm" (ngSubmit)="onSubmit(testform.value)"> <mat-grid-tile> <mat-form-field> <input matInput [matDatepicker]="picker" placeholder="申請日期" name="date" [(ngModel)]="model['test']" #test="ngModel"> <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle> <mat-datepicker #picker disabled="false"></mat-datepicker> </mat-form-field> </mat-grid-tile> </form>
問題:java
1.spa
解決:在form中使用ngModel 的時候須要給input加上 name 屬性,或者是給input加上 [ngModelOptions]="{standalone: true}" 設置了這個屬性以後input就不會加在FormGroup中(使用帶有「ngModel"的」<input>「標籤時,系統會自動爲這個標籤建立一個叫作」FormControl"的對象,而且會自動把它添加到」FormGroup"中。而「FormControl"在」FomGroup「中是用"<input>"標籤上的」name"屬性來作標識的。),可是這樣form提交的時候就不會獲取到Datepicker中輸入的數據orm
2.一直獲取不到Datepicker的數據對象
緣由:在input上加了disabled 被忽視了blog
<input matInput [matDatepicker]="picker" placeholder="申請日期" name="date" disabled [(ngModel)]="model['test']" #test="ngModel">