参考:
1.修改之路
https://segmentfault.com/a/1190000009090037

setValue与patchValue的区别:
setValue: 使用的时候需要每个from control都要设置值。
否则,ERROR Error: Must supply a value for form control with name: 'xxxxx'
patchValue: 类似打补丁,不需要每个from control都要设置值。

可以使用一条一条的setValue方法:

// 只给某一个属性setValuethis.validateForm.get('note')!.setValue(value === 'male' ? 'Hi, man!' : 'Hi, lady!');
// 根据不同情况执行不同的校验规则requiredChange(required: boolean): void {if (!required) {this.validateForm.get('nickname')!.clearValidators(); // 清除校验器this.validateForm.get('nickname')!.markAsPristine();} else {this.validateForm.get('nickname')!.setValidators(Validators.required); // 增加校验器this.validateForm.get('nickname')!.markAsDirty(); // 校验}this.validateForm.get('nickname')!.updateValueAndValidity(); // 最后都要更新一下数据}

angular-Forms patchValue and setValue相关推荐

  1. Angular 响应式表单 patchValue和setValue

    在 Angular 4 中有多种方式可以更新表单的值,对于使用响应式表单的场景,我们可以通过框架内部提供的 API ,(如 patchValue 和 setValue )方便地更新表单的值.这篇文章我 ...

  2. Angular Forms - 自定义 ngModel 绑定值的方式

    在 Angular 应用中,我们有两种方式来实现表单绑定--"模板驱动表单"与"响应式表单".这两种方式通常能够很好的处理大部分的情况,但是对于一些特殊的表单控 ...

  3. Angular中响应式表单 FormBuilder、FormControl 、FormGroup、FormArray、setControl、setValue用法总结

    以我的项目作为示例,总结一下Angular响应式表单的应用和常用的方法: 1.创建表单 form.ts代码 import { Component, OnInit } from "@angul ...

  4. Angular Reactive Forms -- Model-Driven Forms响应式表单

    Angular 4.x 中有两种表单: Template-Driven Forms - 模板驱动式表单 (类似于 AngularJS 1.x 中的表单 )  官方文档:https://v2.angul ...

  5. angular4更改表单中显示的值_Angular 4 动态表单教程 Reactive Forms教程

    动态表单(React Forms)是一种动态构建表单的技术,用于解决有时候手动编写和维护表单所需工作量和时间会过大的问题.特别是在需要编写大量表单时.表单都很相似,而且随着业务和监管需求的迅速变化,表 ...

  6. angular 表单

    angular 表单 一.angular表单简介 Angular 提供了两种不同的方法来通过表单处理用户输入:响应式表单和模板驱动表单. 两者都从视图中捕获用户输入事件.验证用户输入.创建表单模型.修 ...

  7. Angular表单中的FormControl、FormGroup、FormBuilder、FormArray

    Angular表单中的FormControl.FormGroup.FormBuilder.FormArray 要使用响应式表单,首先需要在@angular/forms包中导入ReactiveForms ...

  8. Angular技术分享

    Angular技术分享 1.Angular.js VS Angular 1.1 Angular.js 1.2 Angular 2.Angular Introduction 2.1 Install &a ...

  9. Angular响应式表单及表单验证

    1. 什么是响应式表单? 响应式表单提供了一种模型驱动的方式来处理表单输入,其中的值会随时间而变化. 响应式表单使用显示的,不可变的方式,管理表单在特定时间点上的状态.对表单状态的每一次变更都会返回一 ...

  10. [转]Angular 单元测试讲解

    Angular_单元测试 测试分类 按开发阶段划分 按是否运行划分 按是否查看源代码划分 其他 ATDD,TDD,BDD,DDD ATDD TDD BDD DDD Angular单元测试 Karma的 ...

最新文章

  1. docker搭建ssr
  2. JVM:内存分配与回收策略?Full GC 的触发条件?StopTheWorld ?
  3. 【实验】通过IGMP实现接收组播视频信息案例
  4. 一次批量修改博客文章的经验(下):操作过程
  5. Flashback Query
  6. LeetCode 17. 电话号码的字母组合(回溯)
  7. 高精度乘法(信息学奥赛一本通-T1307)
  8. 如何查看linux的资源,Linux系统资源查看(示例代码)
  9. python把某列改为日期格式_如何更改整列的日期格式?
  10. 微盟CEO孙涛上市致辞:曾豪言30岁前不敲一次钟 人生都不完整
  11. 【转】tensorflow中的batch_norm以及tf.control_dependencies和tf.GraphKeys.UPDATE_OPS的探究
  12. bt磁力链接转换种子中的问题
  13. MacOS:Shell工具-Royal TSX
  14. C#常用 API函数大全
  15. VS2017 CUDA编程学习1:CUDA编程两变量加法运算
  16. 第七章 算术操作指令的实现
  17. Centos 安装Flash控件
  18. linux 播放mkv视频,Fedora 22 怎么播放 rmvb mp4 mkv 视频文件
  19. CHD6.3.1部署文档
  20. 零知识证明在区块链中的应用

热门文章

  1. 一些比较好的国外IT网站
  2. 如何选择适合的公共 DNS
  3. 怎么批量重命名文件夹?
  4. 无刷电机反方向高速旋转
  5. element table实现前端分页
  6. Windows安全基础-基线配置
  7. 如何擦除计算机连接网络的记录,如何清除上网记录 清除上网记录方法汇总
  8. Microsoft Edge无法打开测试平台的解决方法
  9. 傅里叶分析 [作 者:韩 昊]
  10. 固态硬盘使用一段时间后测速变慢的解决方法