中国优质的IT技术网站
专业IT技术创作平台
IT职业在线教育平台
1、lazyForEach中如何清除dataArray中的数据,替换一组新的数据进去。
2、实际应用中,页面数据只会刷新可视页面以外的数据,怎么实现全部数据刷新。
微信扫码分享
清除dataArray中的数据: deleteDataUseContent(data: T): void { let delIndex: number = -1 for (let index = 0; index < this.originDataArray.length; index++) { const element = this.originDataArray[index]; if (data === element) { delIndex = index } } if (delIndex != -1) { this.deleteData(delIndex) } } deleteData(index: number): void { this.originDataArray.splice(index, 1); this.notifyDataDelete(index); } clear() { this.originDataArray.splice(0, this.originDataArray.length) this.listeners.forEach(listener => { listener.onDataDelete(0) }) } 页面刷新: refreshData() { let listData: listItemData[] = [] for (let i = 0; i < titleCount; i++) { let text = '内容' + i + '-' + this.getRandomVal() let itemData: listItemData = { text, id: text } listData.push(itemData) } // 只刷新当前显示在屏幕的数据 for (let i = this.startIndex; i <= this.endIndex; i++) { this.showList[i].textDataSource.setData(listData) } this.dataSource.refreshDataByIndex(this.startIndex, this.endIndex, this.showList.slice(this.startIndex, this.endIndex)) }