Open hsiaofung opened 4 years ago
步驟: app.module.ts >
心得: 製作元件步驟
元件:
元件的上一層
FormControl 的步驟:
表單群組 :
表單資料 : 檢驗與顯示錯誤訊息
<div *ngIf="stockForm.get('name').invalid &&(stockForm.get('name').dirty||stockForm.get('name').touched)">Name is required</div>
檢查表單元素個別檢驗程序的狀態
<div *ngIf="stockForm.get('code').errors.required">Stock Code is required</div>
每個表單元素下面有個div元素,用來顯示條件式錯誤訊息。
從元件類別初始化FormGroup時。我們以個別表單控制項的名稱呼叫stockForm.get()取得個別表單元素。
我們對每個FormControl檢查各種屬性,像是元素是否被碰過(也就是使用者是否存取過該元素)、表單元素是否修改過(髒或乾淨)、是否有效等。
確保只有在表單元素有效且使用者修改(有修改為dirty,否則是pristine)或存取(有存取為touched,否則是untouched)才顯示錯誤訊息。
對檢驗程序一個以上的表單欄位(股票代碼與價格)檢查errors屬性。此欄位能讓我們檢查errors屬性。此欄位讓我們檢查什麼錯誤導致此表單欄位無效,並顯示相對的錯誤訊息。
可以使用getter 讓程式碼更簡潔。
有哪些屬性
其他功能:
setValue : 此方法取用完全符合表單模型JSON模型物件。鍵值不能多也不能少要一樣多,否則會拋出錯誤。
patchStockForm : 這個方法以可用的欄位更新表單,他會忽略多餘的欄位。
reset: 這個方法重置表單到初始狀態。
總結:
習題:
表單: