Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
hello uni-app x
提交
846b6fbb
H
hello uni-app x
项目概览
DCloud
/
hello uni-app x
通知
5995
Star
90
Fork
162
代码
文件
提交
分支
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看板
提交
846b6fbb
编写于
9月 04, 2023
作者:
H
hdx
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
long-list: 增加页面级下拉刷新,暂不支持页签下拉刷新
上级
48e993db
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
19 addition
and
10 deletion
+19
-10
pages.json
pages.json
+2
-1
pages/template/long-list/long-list-page.uvue
pages/template/long-list/long-list-page.uvue
+11
-3
pages/template/long-list/long-list.uvue
pages/template/long-list/long-list.uvue
+6
-6
未找到文件。
pages.json
浏览文件 @
846b6fbb
...
...
@@ -832,7 +832,8 @@
{
"path"
:
"pages/template/long-list/long-list"
,
"style"
:
{
"navigationBarTitleText"
:
"复杂长列表"
"navigationBarTitleText"
:
"复杂长列表"
,
"enablePullDownRefresh"
:
true
}
},
{
...
...
pages/template/long-list/long-list-page.uvue
浏览文件 @
846b6fbb
...
...
@@ -25,9 +25,10 @@
</view>
</view>
</list-item>
<list-item key="loading" v-if="index==dataList.length-1">
<!-- TODO 暂时注释,否者在清空数据时引发异常 -->
<!-- <list-item v-if="index==dataList.length-1" key="loading">
<text class="loading">{{loadingText}}</text>
</list-item>
</list-item>
-->
</template>
</list-view>
</template>
...
...
@@ -83,7 +84,7 @@
} else {
return ""
}
}
}
,
},
created() {
uni.loadFontFace({
...
...
@@ -97,6 +98,11 @@
}
},
methods: {
refreshData() {
this.dataList.length = 0
this.$currentPage = 1
this.loadData()
},
loadData() {
if (this.loading || this.isEnded) {
return
...
...
@@ -129,6 +135,8 @@
},
complete: () => {
this.loading = false
// TODO
uni.stopPullDownRefresh()
}
})
},
...
...
pages/template/long-list/long-list.uvue
浏览文件 @
846b6fbb
...
...
@@ -97,6 +97,9 @@
this.cacheTabItemsSize()
this.setSwiperIndex(0, true)
},
onPullDownRefresh() {
(this.$refs["longPage"]! as ComponentPublicInstance[])[this.swiperIndex].$callMethod('refreshData')
},
methods: {
// TODO
onStartNestedScroll(event : StartNestedScrollEvent) : boolean {
...
...
@@ -105,15 +108,12 @@
onNestedPreScroll(event : NestedPreScrollEvent) {
const deltaY = event.deltaY
const scrollTop = this.$pageScrollView!.scrollTop
// console.log("deltaY=" + deltaY, "pageScrollTop=" + scrollTop)
/// 优先处理父容器滚动,父容器不能滚动时在滚动子
// 向上滚动
if (deltaY > 0) {
// 如果父容器 header scrollTop < offsetHeight,先滚动父容器
if (scrollTop < this.$headerHeight) {
// console.log('pageScrollTop=' + scrollTop)
const difference = this.$headerHeight - scrollTop - deltaY
if (difference > 0) {
this.$pageScrollView!.scrollBy(event.deltaX, deltaY)
...
...
@@ -163,7 +163,7 @@
this.updateTabIndicator(current_index, move_to_index, percentage)
// 首次可见时初始化数据
this.initSwiperItem
Page
(move_to_index)
this.initSwiperItem
Data
(move_to_index)
},
onSwiperAnimationfinish(e : SwiperAnimationFinishEvent) {
this.setSwiperIndex(e.detail.current, true)
...
...
@@ -186,7 +186,7 @@
this.swiperIndex = index
this.initSwiperItem
Page
(index)
this.initSwiperItem
Data
(index)
if (updateIndicator) {
this.updateTabIndicator(index, index, 1)
...
...
@@ -207,7 +207,7 @@
const scroll_x = x - this.$swiperWidth / 2
this.$tabScrollView?.setAttribute('scrollLeft', scroll_x)
},
initSwiperItem
Page
(index : number) {
initSwiperItem
Data
(index : number) {
if (!this.swiperList[index].preload) {
this.swiperList[index].preload = true;
(this.$refs["longPage"]! as ComponentPublicInstance[])[index].$callMethod('loadData')
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录