Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
hello uni-app x
提交
488f7f18
H
hello uni-app x
项目概览
DCloud
/
hello uni-app x
通知
6018
Star
91
Fork
164
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
18
列表
看板
标记
里程碑
合并请求
1
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
hello uni-app x
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
18
Issue
18
列表
看板
标记
里程碑
合并请求
1
合并请求
1
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
488f7f18
编写于
3月 29, 2024
作者:
雪洛
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix: 修复自定义长列表编译到安卓报错的Bug
上级
42270934
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
6 addition
and
4 deletion
+6
-4
pages/template/custom-long-list/README.md
pages/template/custom-long-list/README.md
+1
-1
pages/template/custom-long-list/custom-list-view.uvue
pages/template/custom-long-list/custom-list-view.uvue
+5
-3
未找到文件。
pages/template/custom-long-list/README.md
浏览文件 @
488f7f18
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
[
点击下载&安装
](
)
[
点击下载&安装
](
)
:::
:::
uni-recycle-view 组件用于在展示超长列表时优化内存占用以及
性能
。不同于uni-app list-view组件,uni-recycle-view组件不会对所有数据循环创建VNode。适用于仅使用一个for循环创建所有列表项的场景。
uni-recycle-view 组件用于在展示超长列表时优化内存占用以及
初次加载时的速度
。不同于uni-app list-view组件,uni-recycle-view组件不会对所有数据循环创建VNode。适用于仅使用一个for循环创建所有列表项的场景。
### 基本用法
### 基本用法
...
...
pages/template/custom-long-list/custom-list-view.uvue
浏览文件 @
488f7f18
...
@@ -101,7 +101,7 @@
...
@@ -101,7 +101,7 @@
},
},
flush() {
flush() {
const queueLength = this.rearrangeQueue.length
const queueLength = this.rearrangeQueue.length
if (queueLength ==
=
0) {
if (queueLength == 0) {
return
return
}
}
const lastScrollTop = this.rearrangeQueue[queueLength - 1]
const lastScrollTop = this.rearrangeQueue[queueLength - 1]
...
@@ -109,10 +109,12 @@
...
@@ -109,10 +109,12 @@
this.rearrangeQueue = [] as number[]
this.rearrangeQueue = [] as number[]
},
},
rearrange(scrollTop : number) {
rearrange(scrollTop : number) {
const offsetStart =
this.offsetThreshold[0] = Math.max(scrollTop - this.scrollElementHeight * 5, 0)
this.offsetThreshold[0] = Math.max(scrollTop - this.scrollElementHeight * 5, 0)
this.offsetThreshold[1] = Math.max(scrollTop - this.scrollElementHeight * 3, 0)
this.offsetThreshold[1] = Math.max(scrollTop - this.scrollElementHeight * 3, 0)
this.offsetThreshold[2] = Math.min(scrollTop + this.scrollElementHeight * 4, this.placeholderHeight)
this.offsetThreshold[2] = Math.min(scrollTop + this.scrollElementHeight * 4, this.placeholderHeight)
const offsetEnd =this.offsetThreshold[3] = Math.min(scrollTop + this.scrollElementHeight * 6, this.placeholderHeight)
this.offsetThreshold[3] = Math.min(scrollTop + this.scrollElementHeight * 6, this.placeholderHeight)
const offsetStart = this.offsetThreshold[0]
const offsetEnd =this.offsetThreshold[3]
const items = [] as any[]
const items = [] as any[]
const defaultItemSize = this.defaultItemSize
const defaultItemSize = this.defaultItemSize
const cachedSize = this.cachedSize
const cachedSize = this.cachedSize
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录