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


Posted in Javascript onDecember 13, 2017

本文实例讲述了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>

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

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
转一个日期输入控件,支持FF
Apr 27 Javascript
jquery阻止冒泡事件使用模拟事件
Sep 06 Javascript
jQuery实现文本展开收缩特效
Jun 03 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记8)
Dec 24 Javascript
jquery对dom节点的操作【推荐】
Apr 15 Javascript
jQuery Form插件使用详解_动力节点Java学院整理
Jul 17 jQuery
js实现省市级联效果分享
Aug 10 Javascript
详解如何将 Vue-cli 改造成支持多页面的 history 模式
Nov 20 Javascript
LayerClose弹窗关闭刷新方法
Aug 17 Javascript
详解如何制作并发布一个vue的组件的npm包
Nov 10 Javascript
微信js-sdk 录音功能的示例代码
Nov 01 Javascript
原生js实现的金山打字小游戏(实例代码详解)
Mar 16 Javascript
详解webpack require.ensure与require AMD的区别
Dec 13 #Javascript
vue登录路由验证的实现
Dec 13 #Javascript
vue按需加载组件webpack require.ensure的方法
Dec 13 #Javascript
vue实现某元素吸顶或固定位置显示(监听滚动事件)
Dec 13 #Javascript
vue组件中使用iframe元素的示例代码
Dec 13 #Javascript
vue中路由验证和相应拦截的使用详解
Dec 13 #Javascript
vue实现nav导航栏的方法
Dec 13 #Javascript
You might like
php面向对象全攻略 (十七) 自动加载类
2009/09/30 PHP
PHP创建/删除/复制文件夹、文件
2016/05/03 PHP
PHP使用PDO、mysqli扩展实现与数据库交互操作详解
2019/07/20 PHP
PHP反射原理与用法深入分析
2019/09/28 PHP
PHP利用缓存处理用户注册时的邮箱验证,成功后用户数据存入数据库操作示例
2019/12/31 PHP
js实现禁止中文输入的方法
2015/01/14 Javascript
JS实现的表格行鼠标点击高亮效果代码
2015/11/27 Javascript
js创建jsonArray传输至后台及后台全面解析
2016/04/11 Javascript
jQuery数组处理函数整理
2016/08/03 Javascript
微信小程序 loading(加载中提示框)实例
2016/10/28 Javascript
简单实现JavaScript图片切换效果
2016/11/28 Javascript
简单易懂的天气插件(代码分享)
2017/02/04 Javascript
AngularJS入门教程二:在路由中传递参数的方法分析
2017/05/27 Javascript
利用adb shell和node.js实现抖音自动抢红包功能(推荐)
2018/02/22 Javascript
2种在vue项目中使用百度地图的简单方法
2018/09/28 Javascript
vue中利用Promise封装jsonp并调取数据
2019/06/18 Javascript
[01:25]2015国际邀请赛最佳短片奖——斧王《拆塔英雄:天赋异禀》
2015/09/22 DOTA
[01:20]DOTA2 齐天大圣至宝动态展示
2016/12/13 DOTA
[49:07]VGJ.T vs Optic Supermajor小组赛D组 BO3 第二场 6.3
2018/06/04 DOTA
[53:52]OG vs EG 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
python模拟鼠标拖动操作的方法
2015/03/11 Python
Python中将字典转换为XML以及相关的命名空间解析
2015/10/15 Python
python多个模块py文件的数据共享实例
2019/01/11 Python
关于pandas的离散化,面元划分详解
2019/11/22 Python
Pytorch 中的optimizer使用说明
2021/03/03 Python
Auchan Direct波兰:欧尚在线杂货店
2016/10/19 全球购物
美国豪华时尚女性精品店:Kirna Zabête
2018/01/11 全球购物
Solid & Striped官网:美国泳装品牌
2019/06/19 全球购物
bonprix匈牙利:女士、男士和儿童服装
2019/07/19 全球购物
男方父母证婚词
2014/01/12 职场文书
2016年春节问候语
2015/11/11 职场文书
8g内存用python读取10文件_面试题-python 如何读取一个大于 10G 的txt文件?
2021/05/28 Python
Python实现智慧校园自动评教全新版
2021/06/18 Python
使用springMVC所需要的pom配置
2021/09/15 Java/Android
MySQL详解进行JDBC编程与增删改查方法
2022/06/16 MySQL
Win11无法安装更新补丁KB3045316怎么办 附KB3045316补丁修复教程
2022/08/14 数码科技