我的表单验证在ng类中运行,在某些情况下,我想将类复制到父级容器中。
<div [ngClass]="{'ng-invalid': input.invalid, 'ng-valid': input.valid, 'ng-pristine': input.pristine}">
<input [name]="control.id" [(ngModel)]="control.value" required #input="ngModel">
</div>
这大部分都有效,但我在控制台上收到以下错误:
错误:ExpressionChangedAfterItHasBeenCheckedError:表达式在检查后发生了变化。上一个值:'false'。当前价值:'true'。
有没有办法在定义视图变量之前引用它?
答案 0 :(得分:1)
如果您不确定是否定义某个变量,您可以使用Elvis运算符。
{{1}}
也许您可以创建一个封装ngClass和输入的新组件? input.xxx使你看起来应该使用FormControls:他们为你做有效/无效/原始的东西..