我正在开发一个自定义组件,以便与Angular中的窗体一起使用。我正在实施ControlValueAccessor
接口,它工作得很好。将预定义的验证程序添加到Angular的自定义组件中
但是,我的组件没有理由不使用required
验证程序(它是验证码),因此组件的所有调用都必须指定required
验证程序。
是否有可能以某种方式嵌入这个验证直接进入我的组件,所以它会与ngModel
和形式使用时总是应用于它(包括基于模板和反应的)?
澄清。考虑的例子:上述
<my-captcha [(ngModel)]="firstCaptcha" required></my-captcha>
<my-captcha [(ngModel)]="secondCaptcha" required></my-captcha>
<my-captcha [(ngModel)]="thirdCaptcha" required></my-captcha>
MyCaptcha
组件的所有调用则要使用required
属性,以便需要验证要被施加到的表单控件。
是否可以在不明确指定required
属性的情况下调用我的自定义控制器,但是是否应用了验证器?就像这样:
<my-captcha [(ngModel)]="captchaValue"></my-captcha>
对不起,我有点不专心,但是,你是什么意思*需要验证器*?你的意思是'required'属性? – SrAxi
是的,我的意思是组件的价值必须提供,否则它被认为是无效的。 Angular在基于模板的表单中通过'required'属性解决了这个问题。 –
我目前处于类似的情况。这是使用反应形式的选项吗? 到目前为止我发现的一切可能有助于完成反应形式 – Arikael