我正在使用“ionic-angular”:“3.2.1”版本,但虚拟列表显示了一些滚动后的空白屏幕。
我尝试了以下代码。
<ion-content padding>
<ion-list [virtualScroll]="products" approxItemHeight="100px" [virtualTrackBy]="trackProduct">
<ion-item category-item *virtualItem="let product" (click)="viewProduct(product)">
<img product-image src="some_url.png" />
<div prduct-description ellipsize>
<div product-name ellipsize>{{product.productName || "" | uppercase}}</div>
<div product-sku ellipsize>SKU# : {{product.sku}}</div>
<div price>${{product.price}}/Case</div>
</div>
</ion-item>
</ion-list>
<ion-infinite-scroll (ionInfinite)="doInfinite($event)" threshold="100px" #infiniteScroll>
<ion-infinite-scroll-content loadingSpinner="bubbles" loadingText="Loading more data...">
</ion-infinite-scroll-content>
</ion-infinite-scroll>
</ion-content>
这里是相关的ts文件代码:
/**
* This method will be used for virtual scroll.
* @param index
* @param product
*/
trackProduct(index, product: Product) {
console.log(index, product);
return product.productId;
}
我也尝试过没有virtualTrackBy指令,但没有任何效果。
有人可以帮助我吗?
答案 0 :(得分:0)
您需要使用'产品| async'pipe如果'产品'从firebaselistobservable等服务器获取内容。使用普通数组时,永远不会调用virtualTrackBy。