tingyuxuan2302 / taro3-virtual-list

基于taro3封装的虚拟列表,对列表节点不等高以及白屏等问题支持友好,无计算量,性能优异,支持各大小程序以及h5页面
MIT License
190 stars 26 forks source link

listType为multi时滚动异常 #10

Closed zzb1519 closed 2 years ago

zzb1519 commented 2 years ago

一直往下滑动会出现白屏闪现然后回退到上一屏,比如第74个元素的时候,会白屏闪下然后滚回到第59个元素。 应该是ios的会有问题,安卓机型试了两个正常,苹果的试了11与8都会有问题 ` import React, { useState, useEffect } from "react"; import { View } from "@tarojs/components"; import { TaroVirtualList } from "taro-virtual-list";

import styles from "./sports-team-list.module.styl";

export default function SportsTeamList(): JSX.Element { const [list, setList] = useState<number[]>([]); const [pageNum, setPageNum] = useState(1);

useEffect(() => { const arr: number[] = []; Array(10) .fill(0) .forEach((item, index) => { arr.push(index); }); setList(arr); }, []); // onReachBottom() { // console.log('触底了----') // // this.renderNext() // this.setState({ // isBottom: true, // }) // } // getIsBottomStatus = (status) => { // this.setState({ // isBottom: status, // }) // } const renderFunc = (item, index, pageIndex) => { return ( <View className={styles.el} key={item}

{当前是第${item}个元素,是第${pageIndex}屏的数据} ); }; // const handleBottom = () => { // console.log('触底了') // } const handleComplete = () => { console.log("加载完成"); }; // const handleGetScrollData = (e) => { // console.log('scroll-data', e) // } const onRenderTop = () => { return 头部; }; const handleScrollToLower = () => { console.log("chudidi"); const arr: number[] = []; Array(10) .fill(0) .forEach((item, index) => { arr.push(list.length + index); }); let _list = [...list]; _list = _list.concat(arr); setTimeout(() => { setList(_list); }, 1000); setPageNum(pageNum + 1); }; const handleRenderLoad = () => { return "数据载入中..."; }; return (

{/* 145 */}

); } `