Angular 模板驱动表单和使用服务的被动表单之间的区别

Angular 模板驱动表单和使用服务的被动表单之间的区别,angular,angular-material,angular7,angular-forms,Angular,Angular Material,Angular7,Angular Forms,我想知道什么时候应该使用模板驱动的表单而不是被动表单。我知道这个问题的理论基础,但我不知道哪一个用于角材料。我总是怀疑它的用途 谁能帮我一下吗 提前感谢。作为一名专注于角度的开发人员,我建议始终使用反应式表单设置 开发人员会争论,但相信我,你以后会省去自己的麻烦。Netanel B在这里也写到了这一点: 假设你想要一个非常简单的输入,你可能会想简单地使用 ngModel 模板变量 @视图儿童 他们现在可能没事 但假设您需要添加: 验证 关注变化 以编程方式更新值 所有这些都要求您依赖并

我想知道什么时候应该使用模板驱动的表单而不是被动表单。我知道这个问题的理论基础,但我不知道哪一个用于角材料。我总是怀疑它的用途

谁能帮我一下吗


提前感谢。

作为一名专注于角度的开发人员,我建议始终使用反应式表单设置

开发人员会争论,但相信我,你以后会省去自己的麻烦。Netanel B在这里也写到了这一点:

假设你想要一个非常简单的输入,你可能会想简单地使用

  • ngModel
  • 模板变量
  • @视图儿童

他们现在可能没事

但假设您需要添加:

  • 验证
  • 关注变化
  • 以编程方式更新值
所有这些都要求您依赖并围绕您选择的访问输入的方法编写代码


其中有一个预构建的API,它为每个需求提供了一个标准。

模板驱动表单

  • 在开发静态表单时使用模板驱动的表单。静态意味着表单的结构和逻辑是固定的。例如,表单字段的数量不变,不同用户角色的表单验证规则相同等
  • 例如登录表单、重置密码表单、输入和编辑地址数据的表单、订单数据以及类似的修复数据结构
反应形式

  • 如果表单应支持动态数据结构和逻辑,则使用反应式表单方法。例如动态调查表单、添加/删除0..n标签或电话号码的表单、为不同用户角色提供不同验证的表单等

  • 反应式表单的结构和逻辑主要通过TypeScript实现。相应的HTML构件仅引用TypeScript中定义的表单控件。在最高扩展阶段,可以基于数据结构在运行时完全生成反应式表单

有关更多详细信息,请参考以下内容