Angularは、テンプレート駆動型と反応的なフォームの2つのアプローチを使用して、フォームの作成と検証を簡素化します。テンプレート駆動型フォームは、迅速でシンプルなフォームに最適ですが、リアクティブフォームは複雑なシナリオをより強力に制御できます。 この記事では、実用的な例で両方の方法を示しています
重要な概念:
required
minlength
フォームの提出処理:FormControl
イベントを効率的なデータキャプチャと処理のためのコンポーネントメソッドにバインドします。ngSubmit
セットアップ:
このチュートリアルでは、スタイリングにブートストラップを使用しています。 統合する方法は次のとおりです
インストールBootstrap:プロジェクトのディレクトリで、実行
。
Angular CLIを構成:npm install bootstrap@next
Import formsmodule:で、angular.json
:
"styles": [ "../node_modules/bootstrap/dist/css/bootstrap.css" ]
テンプレート駆動型のフォーム:app.module.ts
FormsModule
@angular/forms
迅速な会社の登録フォームの場合、基本フォームから始めてくださいタグ:
import { FormsModule } from '@angular/forms'; @NgModule({ imports: [ BrowserModule, FormsModule, // ... other imports ] })
属性は、フォームが有効になるまでボタンが非アクティブであることを保証します。 フォーム入力と検証の作成:
会社名の入力フィールドの場合:
"styles": [ "../node_modules/bootstrap/dist/css/bootstrap.css" ]
およびngModel
のバリデーター、およびrequired
およびminlength
。
companyName.touched
同様のアプローチは、業界向けのドロップダウンなど、他のフォームフィールドに適用されます。 コンポーネントのタイプスクリプトは、業界のオプションを定義します
companyName.errors
メソッド:
submitCompany
反応的なフォーム:
import { FormsModule } from '@angular/forms'; @NgModule({ imports: [ BrowserModule, FormsModule, // ... other imports ] })
より複雑なアカウント登録フォームの場合、リアクティブフォームはより大きな制御を提供します。 Import ReactiveFormSmodule:
で、
コンポーネントにフォームコントロールを作成:app.module.ts
ReactiveFormsModule
テンプレートの@angular/forms
<form #companyForm="ngForm" (ngSubmit)="submitCompany(companyForm.value)"> <!-- Form fields here --> <button class="btn btn-primary" type="submit" [disabled]="!companyForm.valid">Submit</button> </form>
エラー処理はテンプレート駆動型のフォームに似ていますが、
<input type="text" class="form-control" name="companyName" ngModel #companyName="ngModel" required minlength="3"> <div *ngIf="companyName.touched && companyName.errors"> <div class="alert alert-danger" *ngIf="companyName.errors.required">Company name is required</div> <div class="alert alert-danger" *ngIf="companyName.errors.minlength">Company name must be at least {{ companyName.errors.minlength.requiredLength }} characters long</div> </div>
特定のフォームフィールドと要件に合わせてコードスニペットを調整することを忘れないでください。 この詳細な説明は、Angularでシンプルな形と複雑なフォームの両方を構築するための強固な基盤を提供します。
以上がシンプルでありながら強力な角度形態をすばやく作成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。