是Angular的新手。
我正在尝试使用可选的“必需”属性标记输入字段,该属性将由组件中相同名称的属性控制。
@Input() required: boolean = true;
简单,对吧?那就是我的想法。
这有效:
<input
id="test123" name="test123"
[required]="required ? '' : null"
[(ngModel)]="test123"
/>
这不是:
<input
id="test456" name="test456"
[required]="required ? '' : null"
/>
很显然,它需要一个ngModel才能正常工作,但是我并不需要为输入提供模型。我只是使用输入来捕获键盘事件以自动完成。
我应该在组件中为其制作一个假模型吗?还是有其他解决方法?
答案 0 :(得分:4)
尝试使用[attr.required]="required || null"
代替[required]="required ? '' : null"
更新的示例在这里 https://stackblitz.com/edit/angular-j7dgba?file=src%2Fapp%2Fhello.component.ts