预期有 2 个参数,但在 Angular 2 中得到 1 个

Expected 2 arguments, but got 1 in Angular 2

我在 Angular 5 中有这个 "Expected 2 arguments, but got 1" 错误。

这是我的代码,用于制作带前缀的居中输入字段。问题是以下行 "this.resizable(this.classElements[i]);"

import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css'],
})

export class AppComponent implements OnInit {
  classElements = document.getElementsByClassName('myinput');

  resizable (el, factor) {
    let int = Number(factor) || 7.7;
    function resize() {el.style.width = ((el.value.length + 1) * int) + 'px'}
    let e = 'keyup,keypress,focus,blur,change'.split(',');
    for (let i in e) el.addEventListener(e[i],resize,false);
    resize();
  }


  ngOnInit() {
    for (let i=0; i < this.classElements.length; i++) {
    this.resizable(this.classElements[i]);
  }
}
}
.myinput {
  min-width:60px!important;
  max-width:99.99%!important;
  transition: width 0.25s;
  }
  <div class="input-group prefix">
    <span class="input-group-addon">Prefix</span>
    <input class="myinput" type="text" />
  </div>

您忘记在 resizable 函数中传递第二个参数。

this.resizable(this.classElements[i],factorData);