JavaScript

超轻量级php框架startmvc

Angular4编程之表单响应功能示例

更新时间:2020-06-19 11:12 作者:startmvc
本文实例讲述了Angular4表单响应功能。分享给大家供大家参考,具体如下:响应式表单1、响

本文实例讲述了Angular4表单响应功能。分享给大家供大家参考,具体如下:

响应式表单

1、响应式表单需要在appmodule文件中注入响应式表单模块


import { FormsModule, ReactiveFormsModule } from '@angular/forms';
<!--
 这里引用模块的时候要注意,具体是哪个module文件使用了表单,
 因为在某些情况下表单是被appmodule下的某个子module文件使用,
 那么就要在该子module文件中引入响应式表单模块。
-->
@NgModule(
 {imports: [FormsModule, ReactiveFormsModule……]
 ……}

2、form.component.ts组件当中引用

第一种方式:


import { Component } from '@angular/core';
import { FormGroup, FormControl, FormBuilder} from '@angular/forms';
@Component({
 templateUrl: 'forms.component.html'
})
export class FormsComponent {
 formModel: FormGroup;
 constructor(fb: FormBuilder) {
 this.formModel= fb.group({
 formControl1: [''],
 formControl2: [''],
 ……
 });
 }
 onSubmit () {
 console.log(this.formModel.value);
 }
}

第二种方式:


import { Component } from '@angular/core';
import { FormGroup, FormControl} from '@angular/forms';
@Component({
 templateUrl: 'forms.component.html'
})
export class FormsComponent {
 formModel: FormGroup; /*这里定义表单变量名,HTML文件中绑定时使用*/
 constructor() {
 this.formModel= new FormGroup({
 formControl1: new FormControl(),
 formControl2: new FormControl(),
 ……
 });
 }
 onSubmit () {
 console.log(this.formModel.value);
 }
}

3、对应的HTML文件


<form action="" method="post" [formGroup]='formModel'> <!-- 通过指令绑定ts文件中命名的变量名 --!>
 <div class="form-group row">
 <div class="col-md-6">
 <div class="row">
 <label>formControl1</label>
 <input type="text" formControlName='formControl1'>
 </div>
 </div>
 <div class="col-md-6">
 <div class="row">
 <label>formControl2</label>
 <input type="text" formControlName='formControl2'>
 </div>
 </div>
 </div>
</form>

至此,一份简单的响应式表单就完成了