类型“ JQuery <HTMLElement>”上不存在属性“ mask”

时间:2019-12-16 12:50:31

标签: javascript jquery angular mask

我最近试图在我的有角项目中使用jquery掩码,所以我在项目中安装了npm i jquery-mask-plugin,所以在我的TS文件中写了:

ngOnInit() {
      $('.date').mask('11/11/1111');
      $('.time').mask('00:00:00');
      $('.date_time').mask('00/00/0000 00:00:00');
      $('.cep').mask('00000-000');
      $('.phone').mask('0000-0000');
      $('.phone_with_ddd').mask('(00) 0000-0000');
      $('.phone_us').mask('(000) 000-0000');
      $('.mixed').mask('AAA 000-S0S');
      $('.cpf').mask('000.000.000-00', {reverse: true});
      $('.money').mask('000.000.000.000.000,00', {reverse: true});
  }

就像在主站点上一样,但是我更喜欢使用$(document).ready(function(e))而不是ngOnInit(),但是当我保存时,控制台将错误提示给了我:

  

“类型'Jquery'上不存在属性'mask'”

我在做什么错?我必须在appModule上导入吗?我必须在angular.json中声明它?我必须导入要使用的组件文件吗?我该怎么办?
肥胖:如果您认为还有其他更好的角度遮罩,请告诉我:)

1 个答案:

答案 0 :(得分:1)

那么,Angular 2+的“官方”遮罩库是https://www.npmjs.com/package/ngx-mask。我已经多次使用它,并且效果很好。您应该将其导入appModule中,如果您有延迟加载的模块,它们也同样在其中使用了掩码。