在棱角分明的imask中,我如何获得imask类



使用Angular IMask,我正在用程序更新具有IMask的字段。所以我得到了错误:

"元素值已在掩码之外更改。使用mask.updateValue((同步掩码以正常工作">

我用程序更改了输入,因为我有一个与之相关的日期选择器(Angular Bootstrap ng Bootstrap模块中的NgbDatepicker组件(。

如何获取imask对象以便调用updateValue((?我只在模板上设置了组件,所以组件中没有任何可以访问的对象。

除了访问IMask对象之外,还有其他方法可以删除该消息吗?如果有的话,请告诉我。

您可以通过使用ViewChild属性装饰器查询IMask指令来获取IMask实例,然后您可以通过maskRef属性从指令访问IMask示例。

@Component({
template: `
<input type="text"
[imask]="maskConfig"
>
`,
})
export class MyMaskComponent {
maskConfig = {...}
@ViewChild(IMaskDirective, { static: false })
iMask: IMaskDirective<IMask.MaskedNumber>;
ngAfterViewInit(): void {
this.iMask.maskRef.updateValue();
}
}

您可以对此组件使用ViewChild,也可以使用Angular LifeCycle中的ngOnChanges并过滤此引用的更改以获取当前对象。

相关内容

  • 没有找到相关文章

最新更新