ng6中输入表格选项的架构评估?

问题描述 投票:1回答:1

我试图从架构评估的角度理解Angular 6输入表单。模板驱动的表单是一种选择。根据我在网上看到的内容,模板驱动的表单通常被认为是“初学者表单”,或者是开发者从AngularJs过渡时更自然的形式。

反应表格是另一种选择。根据我在网上看到的内容,反应形式通常被认为比模板驱动形式更有能力,更灵活和可测试。这似乎是一个准确的评估吗?

我只是浏览了一下文档,但是动态表单提供了一种快速简便的方法,可以从元数据中完全生成表单。

因此,似乎动态表单将成为架构评估的起点b / c这种方法可以通过消除大部分UI工作来简化开发过程。您是否遇到过Dynamic Forms不足的任何特定情况?或者是否通常采用直接且结构化的方式来适应动态表单的潜在限制?

对于大型企业应用程序而言,似乎应将Reactive Forms视为模板驱动表单的首选输入表单体系结构。你能否证实这个陈述?

angular
1个回答
0
投票

我对此完全赞同。

好的:是的!与模板驱动的表单相比,反应表单通常更具能力,灵活性和可测试性。您可以添加自定义验证器,异步验证器,生成具有模型的表单,动态地向表单添加控件或控件组,并使用Reactive Forms执行所有这些操作。

动态表单只是Reactive Forms的扩展。它们允许您仅通过配置生成表单。但是设置它们可能有点棘手。考虑到不同类型的表单字段。在Angular有demonstrated here的例子中,它仅适用于inputselect列表。但是如果表单还有radio按钮,带有芯片的自动完成列表以及其他几种此类的东西怎么办呢。我以前从未使用过动态表格。但是如果考虑这样一个用例,我认为设置和使用它是一件非常困难的事情。虽然,如果您是一个企业并且有几个Web项目,您希望为您的组件提供一致的外观和感觉,那么我想这将是一个非常好的选择。

糟糕:动态表格绝对是建筑评估的绝佳选择。但它们并没有通过消除大部分UI工作来简化开发过程。事实上,我会说在Reactive Forms方面有更多的UI工作。添加验证错误,从表单数组添加/删除表单控件或表单组,获取对表单中特定表单控件或组的引用等也是有点棘手。因此,那里有一些学习曲线。但是一旦你掌握了Reactive Forms,它们就非常简单了。

同样在动态表单的情况下,如果您希望在整个企业中拥有一致的表单,那将非常富有成效。但根据您的企业类型,情况并非总是如此。

何时使用:

我不同意你上次的发言。使用特定类型的表单完全取决于您尝试实现的用例类型。

如果您有一个非常简单的用户入门表单,该表单接受来自用户的姓名和电子邮件,那么为此创建一个被动表单将没有多大意义。

但是如果您有来自API的数据,那么您就拥有了这个数据的模型,并且您想要预先填充此数据的表单以便用户可以更新它,那么对于这样的用例,Reactive Forms就更多了首选。

希望这有一定道理,并帮助您决定何时应该使用什么。

© www.soinside.com 2019 - 2024. All rights reserved.