Angularjs 将无效状态设置为被动表单控件

Angularjs 将无效状态设置为被动表单控件,angularjs,angular,angular2-forms,Angularjs,Angular,Angular2 Forms,我试图将表单控件状态设置为无效,但此示例不起作用 this.currencyForm.controls['currencyMaxSell'].setErrors({smallerThan: true}) 我不知道为什么会有人想在没有验证器的情况下将formControl设置为无效,但下面是如何做到这一点的this.myForm.controls['mycontrolname'].setErrors({}) 您应该以这种方式使用并设置控件无效它应该以这种方式工作。你能在Plunker中复制吗?我

我试图将表单控件状态设置为无效,但此示例不起作用

this.currencyForm.controls['currencyMaxSell'].setErrors({smallerThan: true})

我不知道为什么会有人想在没有验证器的情况下将formControl设置为无效,但下面是如何做到这一点的
this.myForm.controls['mycontrolname'].setErrors({})


您应该以这种方式使用并设置控件无效

它应该以这种方式工作。你能在Plunker中复制吗?我正在使用“@angular/cli”:“^1.0.0”,“@angular/forms”:“^4.0.1”,在Plunker中,只有2.0.0-beta17Plunker提供了最新Angular2版本的模板。只需使用“新建”按钮并选择“角度”@GünterZöchbauer,我发现为什么不更新,不更新值。谢谢。但是现在不能删除这个错误,查找方法setErrors,但是像deletError这样的方法不能提供资金。我可以给你一个很好的例子。假设您有一个下拉列表和一个输入字段。下拉列表为您提供制造商。输入字段用于为该制造商的项目命名。规则是,在同一制造商的所有产品中,名称必须是唯一的。如果您首先选择制造商,然后输入项目名称,则验证将投诉该名称是否已在使用中。但是,如果您输入一个不存在的名称,然后再次更改制造商,该怎么办?如果项的名称正在使用中,则名称输入的验证程序不会警告您。@Lynx242您应该在表单组(或任何父控件)上使用验证程序,并在那里进行验证。您可以访问验证器中的这两个字段,并相应地设置错误。好的。我来看看。我认为验证器只是FormControl绑定的。