Angular 角度5 HTML Comp。TS Comp.&x27缺失;s函数?

Angular 角度5 HTML Comp。TS Comp.&x27缺失;s函数?,angular,typescript,jhipster,Angular,Typescript,Jhipster,我在Angular组件的TypeScript部分编写的函数似乎对HTML不可见,HTML应该能够调用它,但是可以调用同一文件中的其他函数 调用loadPage(page+1)函数成功,但调用timedLoadResults()函数失败。我也尝试了ng keyup指令,但没有产生函数调用结果(通过浏览器的网络流量进行验证,在执行时向服务器进行API调用) 浏览器错误为:“timedLoadResults”未定义 HTML: 未调用timedLoadResults的原因是它未绑定到keyup事件。要

我在Angular组件的TypeScript部分编写的函数似乎对HTML不可见,HTML应该能够调用它,但是可以调用同一文件中的其他函数

调用loadPage(page+1)函数成功,但调用timedLoadResults()函数失败。我也尝试了ng keyup指令,但没有产生函数调用结果(通过浏览器的网络流量进行验证,在执行时向服务器进行API调用)

浏览器错误为:“timedLoadResults”未定义

HTML:


未调用
timedLoadResults
的原因是它未绑定到
keyup
事件。要绑定到事件,请使用
(keyup)=“timedLoadResults()”
而不是
onkeyup

onkeyup
是一个事件。所以您需要将其指定为
(keyup)=“timedLoadResults()”
谢谢Gunner!工作得很有魅力。将其作为解决方案发布,以便我可以批准。谢谢。继承了最近离职的高级开发人员的一个大项目,我在Angular的背景是维护一个相当静态的Angular 1.0 web应用程序。你是个救生员。
<input type="text" id="searchTextId" [(ngModel)]="searchText" name="searchText" placeholder="Search" onkeyup="timedLoadResults()" >
<div id="workflowsTable" class="table-responsive" *ngIf="onlineAcceptanceWorkflows">
    <table class="table table-striped">
//table headers...
        <tbody infinite-scroll (scrolled)="loadPage(page + 1)" [infiniteScrollDisabled]="page >= links['last']" [infiniteScrollDistance]="0">
            <tr *ngFor="let onlineAcceptanceWorkflow of (onlineAcceptanceWorkflows | customSearch: searchText) ;trackBy: trackId">

//...
loadPage(page) {
    this.page = (this.searchText != '')
                ? this.page
                : page;
    this.loadAll();
}

timedLoadResults() {
    if(this.searchText == ''){
        return;
    } else {
        if(this.timeOut != null) clearTimeout(this.timeOut);
        this.timeOut = setTimeout(() => this.loadPage(0), 150);
    }
}