防止输入更改导致表单变脏(Angular 5.2)

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

有一种简单的方法可以防止输入控件弄脏其父窗体吗?我可以通过构建一个没有controlValueAccessor的自定义标签来实现,但我想知道是否有更简单的方法。

在我的一个表单中间,我有一个输入,在一个按钮旁边有一个数字。输入只是指定我想要添加到一组事物中的特定类型项目的数量。您指定与表单是否应被视为脏的无关的输入,因为在单击添加按钮之前表单没有“更改”,此时将一堆项添加到集中并传播更改从那里。

angular angular-forms dirty-data
1个回答
2
投票

如果您使用模板驱动的表单,则可以使用

[ngModelOptions]="{standalone: true}"

这是针对您的方案专门定义的。从文档:

standalone:默认为false。如果将其设置为true,则ngModel将不会将其自身注册为其父表单,并且将表现为它不在表单中。如果你有形式元控件,a.k.a。表单元素嵌套在控制表单显示但不包含表单数据的标记中,这可能很方便。

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