我在浏览Angular文档时遇到了FormController类。我看到有两种添加和删除控件的方法,分别是$addControl()
和$removeControl()
。我假设这些将用于动态添加和删除表单控件,但是我到底该如何使用它们呢?
最佳答案
formController
在其中跟踪一组子输入控件,以便在示波器上设置这些子输入控件的控制器,并跟踪$dirty
/ $pristine
,$valid
/ $invalid
等。 ..基于其子控件的表单状态。
该API由ngModelController
调用(这是Angular实现其内置(并提供自定义钩子)输入控件的方式),由formController
调用子窗体以将其自身注册到其父级formController
。
如果您实现了require: "ngModel"
的自定义输入控制器(即支持ngModel
抽象层的自定义输入控件),则可以为您完成此操作。
在绝大多数情况下,这就足够了。但是,大概可以实现自己的类似ngModel
的指令,然后可以使用此API向ngModel
注册非formController
控件。