当我运行“ ng build --prod”来构建我的角度应用程序时,它抛出错误“ /folio-header.component.html(25,11):指令InputNumberOnlyDirective,期望1个参数,但得到0。 “
这是html代码:
<input inputNumberOnly class="form-control" [(ngModel)]="folioDto.folioVolume" [ngModelOptions]="{standalone: true}">
这是指令:
import {Directive, HostListener} from '@angular/core';
@Directive({
selector: '[inputNumberOnly]'
})
export class InputNumberOnlyDirective {
constructor() {
}
@HostListener('keypress') onkeypress(e) {
let event = e || window.event;
if (event) {
return this.isNumberKey(event);
}
}
isNumberKey(event) {
const charCode = (event.which) ? event.which : event.keyCode;
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
return false;
}
return true;
}
}
答案 0 :(得分:0)
问题是您正在定义一个函数,该函数需要在以下位置监听事件
@HostListener('keypress') onkeypress(e) {
您可以通过添加添加事件参数来简单地解决此问题
@HostListener('keypress', ['$event']) onkeypress(e) {