我发现这里有一些回答建议使用类似以下代码的行:
这里的缺点是我一直在重写
有使用第一种方法的原因吗?它仍然在做相同的工作,但一遍又一遍地重复。
<div *ngFor="let x of filter(myArray)">
然而,filter(myArray)
会被不断地运行。
我发现像下面这样保留两个数组的方式更加高效。
<div *ngFor="let x of filteredArray">
代码
let fullArray = [1,2,3,4,5,6]
let filteredArray = []
onFilterEvent() {
filteredArray = fullArray.filter(x => /* filtering logic */)
}
这里的缺点是我一直在重写
filteredArray
的内容。然而,它只在需要过滤逻辑时运行,而不是一直运行。有使用第一种方法的原因吗?它仍然在做相同的工作,但一遍又一遍地重复。
onFilterEvent
?而在第一个例子中,变更检测将会调用filter()
。 - Milad