私のアングル4コンポーネントで私のアレイをフィルタリングしようとしています。配列も配列である自体の特性を有する:jsのオブジェクトの配列をフィルタリングする方法は?
export const data = [
{
"number": "1",
"lines": [
"aaaaabbbb bbbbb ccccc ddddd",
"aaaaabbbb bbbbb ccccc ddddd",
"aaaaabbbb bbbbb ccccc ddddd",
]
}
,
{
"number": "2",
"lines": [
"aaaaabbbb bbbbb ccccc ddddd",
"aaaaabbbb bbbbb ccccc ddddd",
"aaaaabbbb bbbbb ccccc ddddd",
]
}
,
{
"number": "3",
"lines": [
"aaaaabbbb bbbbb ccccc ddddd",
"aaaaabbbb bbbbb ccccc ddddd",
"aaaaabbbb bbbbb ccccc ddddd",
]
}
]
これはcomponent.htmlの一部である:
<input (keyup)="search($event.target.value)" />
<tr *ngFor="let item of filteredData">
<td>{{item.number}}</td>
<td>{{item.lines}}</td>
</tr>
これは、フィルタ/検索TS-コードの一部である:
export class AppComponent {
filteredData = data;
search(val: any) {
let ind = false;
console.log(val);
if (!val) this.filteredData = this.data;
//this statement does not work:
this.filteredData = this.data.filter(item=> item.lines.indexOf(val) >=0)
}
}
データをフィルタリングするにはどうすればよいですか?フィルターステートメントの詳細については、角度コードを無視してください。 item.lines.indexOf(val)
に基づい
? –
私は質問を更新しました。たとえば、「bbbbb」を検索すると、何も返されません。 –