

本文实例讲述了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文件中命名的变量名 --!> <p class="form-group row"> <p class="col-md-6"> <p class="row"> <label>formControl1</label> <input type="text" formControlName='formControl1'> </p> </p> <p class="col-md-6"> <p class="row"> <label>formControl2</label> <input type="text" formControlName='formControl2'> </p> </p> </p> </form>
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
使用JS如何才能获取SessionStorage的值
利用node.js等技术如何实现登录注册功能?
在vue中如何使用filter过滤器
前端算法中有关文字避让的问题(详细教程)
