无法读取属性';价值';在Angular2字体脚本中未定义的
我正在构建一个Angular2应用程序,并试图通过点击无法读取属性';价值';在Angular2字体脚本中未定义的,angular,typescript,Angular,Typescript,我正在构建一个Angular2应用程序,并试图通过点击*ngIf 以下是我的看法: <router-outlet> <div class="releasesMenu" *ngIf="detailedInfo"> <h1>Releases</h1> <div class="search"> <input type="text" #search (keyup)="0" placeholder="Find releas
*ngIf
以下是我的看法:
<router-outlet>
<div class="releasesMenu" *ngIf="detailedInfo">
<h1>Releases</h1>
<div class="search">
<input type="text" #search (keyup)="0" placeholder="Find release by its name, song or year">
</div>
</div>
<div class="releasesOutlet container">
<div class="row releasesBlock">
<div *ngFor="let release of (releases| searchFilter: search.value )" class="releaseRender" (click)="onSelect(release)">
<div class="releaseRenderWrap" *ngIf="!selectedRelease">
<span>Something interesting...</span>
</div>
</div>
<div class="releaseDetails" *ngIf="selectedRelease">
<div class="releaseDetailsWrap">
<span>Some details...</span>
</div>
</div>
</div>
</div>
</router-outlet>
我想要的是删除/隐藏我的。releasesMenu
阻止(单击)=“onSelect(release)
。但是我得到了错误:
无法读取未定义的属性“value”这是因为#search
位于*ngIf
将其添加到components类中
@ViewChild('search')search:ElementRef;
并将*ngFor
更改为
*ngFor="let release of (releases| searchFilter: search?.nativeElement?.value )"
另见
*ngFor="let release of (releases| searchFilter: search?.nativeElement?.value )"