我已将表单逻辑从模板移到 FormGroup 和 FormControl 对象中。当我禁用 FormControl 时,Angular 也会更新disabled
DOM 中字段的属性。但是,当我将控件的验证器更新为包含/排除时,DOM 中Validators.required
的required
属性不会更新。
只是想知道这是为什么?我需要这两个设置,否则 Angular Material 不会使用“*”为字段设置样式,告诉用户它是必需的。
我已将表单逻辑从模板移到 FormGroup 和 FormControl 对象中。当我禁用 FormControl 时,Angular 也会更新disabled
DOM 中字段的属性。但是,当我将控件的验证器更新为包含/排除时,DOM 中Validators.required
的required
属性不会更新。
只是想知道这是为什么?我需要这两个设置,否则 Angular Material 不会使用“*”为字段设置样式,告诉用户它是必需的。
他们确实在这里的文档中提到了一些花絮
我认为基本上,他们不需要让反应式表单工作。它独立于html。他们说“必需的属性仍然存在。虽然出于验证目的不需要它,但出于 CSS 样式或可访问性的原因,您可能希望将其保留在模板中。”
我记得在某处看到他们计划最终让 Validators.required 反应配置也为您更新所需的 html 属性,但还没有编码。