Javascript Angular 9动态ngx掩码问题

Javascript Angular 9动态ngx掩码问题,javascript,angular,angular-directive,ngx-mask,Javascript,Angular,Angular Directive,Ngx Mask,我有以下的意见 <input [(ngModel)]="myInput" mask="00-0000-0000||00-00000-0000" type="text" > 我想用一个特定的值来初始化它。比如说12-12345-1234 这不起作用,因为我只看到12-1234-5123(最后一个数字是从html输入中剪切出来的,并且使用了尽可能短的掩码) 我希望能够使用任何有效值初始化输入,并查看应用于输入的

我有以下的意见

<input
  [(ngModel)]="myInput"
  mask="00-0000-0000||00-00000-0000"
  type="text"
>

我想用一个特定的值来初始化它。比如说12-12345-1234

这不起作用,因为我只看到12-1234-5123(最后一个数字是从html输入中剪切出来的,并且使用了尽可能短的掩码)


我希望能够使用任何有效值初始化输入,并查看应用于输入的正确掩码。

要设置DOM初始值,可以使用HTML模板上的
属性:

您试图使用的掩码是DOM操作逻辑的产物。它将通过运行JavaScript代码来实现,JavaScript代码修改DOM,并且根据您使用的框架或创建输入掩码效果的库,将始终覆盖该“初始”值


在您的例子中,使用[(ngModel)]并不是一个严格的初始化:据我所知,它已经是angular制作的一个值绑定“事件”。为了测试您的逻辑,我认为创建测试或将掩码动态添加到字段(如果可能)是更好的方法。

因此,我决定在用户输入一些值后立即动态添加掩码。@DamianKociszewski您是如何解决的?我对我的解决方案并不感到自豪,但我已将我的掩码声明为初始值为null的BehaviorSubject。我正在等待输入初始化,并根据初始输入值将下一个值(掩码)传递给掩码行为子对象。如果使用异步管道订阅掩码值,则可以动态更改其掩码。所以基本上我是一种欺骗,没有在init上提供掩码。