繁体   English   中英

Angular:引用模板中的当前元素

[英]Angular: Refer to current element in a template

我有一个包含多个输入的表单。 我想分别验证每一个,并在输入包含无效值时添加一个类(例如, is-invalid )。 我知道 Angular 将ng-invalid添加到输入类列表中,但由于 Bootstrap 需要另一个类来显示错误,我想添加 Bootstrap 的类。

有没有办法在 Angular 中引用当前元素? 我正在使用 Angular 5。我的模板:

<input [(ngModel)]="test" name="test" required [class.is-invalid]="thisElement.invalid && thisElement.touched">
                                                                   ^^^^^^^^^^^

引用当前元素(代码片段中的thisElement )的东西是我正在寻找的。 它存在吗?

要引用相同的元素,您可以使用#thisElement ,其中“thisElement”可以是您选择的任何名称。 由于您需要从它所代表的模型( thisElement.invalid )访问某些属性,因此您必须将其导出为ngModel

所以模板将是这样的:

<input #thisElement="ngModel" [(ngModel)]="test" name="test" required [class.is-invalid]="thisElement.invalid && thisElement.touched">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM