【问题标题】:Passing ngModel Template Reference Variable to Input Variable as AbstractControl将 ngModel 模板引用变量作为 AbstractControl 传递给输入变量
【发布时间】:2018-04-05 14:22:04
【问题描述】:

我正在尝试将ngModel 引用的AbstractControl 传递给另一个组件上的输入变量。

据此:https://angular.io/guide/form-validation#template-driven-validation(代码 sn-p 下的第二个项目符号),#name="ngModel" 将 NgModel 导出到名为 name 的局部变量中。 NgModel 反映了其底层 FormControl 实例的许多属性,因此您可以在模板中使用它来检查控制状态,例如有效和脏

如果我没看错,我应该能够将name 模板引用变量中的FormControl(继承自AbstractControl)传递给另一个组件,如下所示:<my-component for="name"></my-component> where in MyComponentfor 是一个 Input 变量,采用 AbstractControl。然后我应该能够以AbstractControl 的身份使用for

我不能。当我调试时,for 是一个值为“name”的字符串。

任何想法我错过了什么?我的目标是能够集中验证处理并在MyComponent 中显示,因此我需要访问AbstractControl(或FormControl)来获取我尝试验证的任何字段。

【问题讨论】:

    标签: angular angular2-forms


    【解决方案1】:

    你需要方括号来解析name,所以

    <my-component [for]="name"></my-component>
    

    否则,将其视为字符串/

    【讨论】:

    • 哦,快!我太专注于“硬”的东西(或者至少对我来说是新的东西),以至于我忽略了简单的东西!这正是的问题。谢谢@user184994。
    猜你喜欢
    • 2016-02-16
    • 1970-01-01
    • 2012-10-11
    • 2017-11-10
    • 1970-01-01
    • 1970-01-01
    • 2018-04-07
    • 2019-04-03
    • 2011-05-08
    相关资源
    最近更新 更多