Angular Ivy strictTemplates类型'Event'的参数不能分配给'InputEvent'类型的参数

时间:2020-05-14 08:56:35

标签: html angular typescript angular-ivy

我真的不明白那是什么 问题在于此代码

<input #quantity type="number" matInput formControlName="quantity" (input)="onQuantity($event, i)" placeholder="Quantity"/>

onQuantity(event: InputEvent, i: number) {
    if (!this.totals[i]) {
      this.totals[i] = { price: '0', quantity: 1 };
    }
    let value = (event.target as HTMLInputElement).value;
    value = value ? value : '0';
    this.totals[i].quantity = parseInt(value, 10);
  }

编译器出现错误 “事件”类型的参数不能分配给“输入事件”类型的参数。 如果我使用

onQuantity(event: Event, i: number)

我明白了 “事件”类型缺少“输入事件”类型的以下属性:数据,inputType,isComposed,详细信息以及另外2个。

所以我不知道该怎么转:( 有人可以帮我吗?

更新

我已经解决了

(input)="onQuantity(quantity.value, i)"

https://angular.io/guide/user-input

2 个答案:

答案 0 :(得分:0)

更改事件属于InputEvent类型的接口

尝试一下:

onQuantity(event: InputEvent, i: number){}

答案 1 :(得分:0)

请使用

onQuantity(event:InputEvent, i: number){
    // do your operation
  }

事件的类型是InputEvent。 您可以使用console.log(event)

进行检查

对我来说

1