Open xiaocode337317439 opened 1 year ago
你们自己的小程序,虚拟列表顶部下拉也会白屏
const listScroll = (e) => {
// 这里没有处理下拉变成负数的情况
const scrollTop = Math.max(e.detail ? e.detail.scrollTop : e.target.scrollTop, 0);
const scrollSize = Math.floor(scrollTop);
const startIndex = binarySearch(positions, false, scrollSize);
const overStart = startIndex - overscan > -1 ? startIndex - overscan : 0;
const endIndex = end();
if (!itemEqual) {
updateTotalSize();
}
setStart(Math.floor(scrollTop / itemHeight));
setOptions({ startOffset, startIndex, overStart, endIndex });
if (end() > list.length - 1) {
onScroll && onScroll();
}
setStartOffset(scrollTop - scrollTop % itemHeight);
};
有解决方案了吗,这种体验很差的
有解决方案了吗,这种体验很差的 源码中修改,自己实现一个插件或者直接node动态找到源码文件动态修改 // 这里没有处理下拉变成负数的情况 const scrollTop = Math.max(e.detail ? e.detail.scrollTop : e.target.scrollTop, 0);
const scrollTop = Math.max(e.detail ? e.detail.scrollTop : e.target.scrollTop, 0);
NutUI React 包名
@nutui/nutui-react-taro
NutUI React 版本号
2.0.19
平台
weapp
重现链接
无
重现步骤
https://github.com/jdf2e/nutui-react/assets/21286091/eaa648b1-97f7-4020-8d0a-6280d756980d
JavaScript <VirtualList containerHeight={containerHeight} list={listData} itemRender={itemRender} itemHeight={173} overscan={10} />
containerHeight是计算出的屏幕剩余高度期望的结果是什么?
VirtualList下拉不要白屏
实际的结果是什么?
下拉会白屏
环境信息
👽 Taro v3.6.17
Taro CLI 3.6.17 environment info: System: OS: macOS 12.7 Shell: 5.8.1 - /bin/zsh Binaries: Node: 18.18.0 - /usr/local/bin/node Yarn: 1.22.18 - /usr/local/bin/yarn npm: 10.1.0 - /usr/local/bin/npm npmPackages: @tarojs/cli: 3.6.17 => 3.6.17 @tarojs/components: 3.6.17 => 3.6.17 @tarojs/helper: 3.6.17 => 3.6.17 @tarojs/plugin-framework-react: 3.6.17 => 3.6.17 @tarojs/plugin-html: ^3.6.17 => 3.6.17 @tarojs/plugin-platform-alipay: 3.6.17 => 3.6.17 @tarojs/plugin-platform-h5: 3.6.17 => 3.6.17 @tarojs/plugin-platform-jd: 3.6.17 => 3.6.17 @tarojs/plugin-platform-qq: 3.6.17 => 3.6.17 @tarojs/plugin-platform-swan: 3.6.17 => 3.6.17 @tarojs/plugin-platform-tt: 3.6.17 => 3.6.17 @tarojs/plugin-platform-weapp: 3.6.17 => 3.6.17 @tarojs/react: 3.6.17 => 3.6.17 @tarojs/runtime: 3.6.17 => 3.6.17 @tarojs/shared: 3.6.17 => 3.6.17 @tarojs/taro: 3.6.17 => 3.6.17 @tarojs/taro-loader: 3.6.17 => 3.6.17 @tarojs/webpack5-runner: 3.6.17 => 3.6.17 babel-preset-taro: 3.6.17 => 3.6.17 eslint-config-taro: 3.6.17 => 3.6.17 react: ^18.0.0 => 18.2.0
其他补充信息
No response