ControlValueAccessor 和 FormControl Value 不同步

ControlValueAccessor and FormControl Value are out of sync

我在输入中实施了 mask 以仅允许一种特殊格式。掩码工作正常,但是当用户输入字母时,例如,它附加到 formControl value,即使该字段不显示它也是如此。

Stackblitz

accessor.writeValue 是一种更新输入内部值的方法,但不是在逻辑模型中。最短的修复是

if(newVal != event) this.ngControl.control.setValue(newVal);

这将更新控件内部的值