uniapp中使用uview的u-list 或者内置组件scroll-view 实现tabs切换 list会到顶部实现

需求背景

页面中用到的 u-list 同 scroll-view 因为u-list底层也是对scroll-view进行的二次封装

想要实现顶部tabs切换的时候 list 回到顶部功能,官方提供了api并没给介绍怎么使用,在我们使用的时候不得不去翻看源码,在源码中可以清晰的看到底层的实现

首先通过onScroll获取滚动的高度进行记录

2、当你切换tabs的时候进行设置scrollTop高度并赋值给scrollTop 属性

scss 复制代码
    if (!innerScrollTop.value) return;      scrollTop.value = innerScrollTop.value;      nextTick(() => (scrollTop.value = 0));
 // 为了结局页面tabs切换比较快可以添加 延迟重置进行优化
// 建议将此步骤放在数据请求完成再进行操作setTimeout(() => {      scrollTop.value = innerScrollTop.value;      nextTick(() => (scrollTop.value = 0));    }, 300);

3、在template中 使用

ruby 复制代码
 <u-list        @scrolltolower="scrolltolower"        :scrollTop="scrollTop"        :height="pageHeight"        @scroll="scroll"      >
xxxxxxxxxxxxxx
</u-list>

以上图片是源码里面的内容,代码片段是功能代码

相关推荐
小屁孩大帅-杨一凡2 分钟前
一个简单点的js的h5页面实现地铁快跑的小游戏
开发语言·前端·javascript·css·html
读心悦7 分钟前
CSS 布局系统深度解析:从传统到现代的布局方案
前端·css
椒盐螺丝钉12 分钟前
CSS盒子模型:Padding与Margin的适用场景与注意事项
前端·css
萧鼎1 小时前
构建全栈 Web 应用的新选择:NextPy 技术详解与实战指南
前端
这个一个非常哈1 小时前
VUE篇之自定义组件使用v-model
前端·javascript·vue.js
purpleseashell_Lili2 小时前
react 基本写法
java·服务器·前端
哎哟喂_!2 小时前
Node.js 循环依赖问题详解:原理、案例与解决方案
前端·chrome·node.js
热爱前端的小君同学2 小时前
长按拖拽移动的vue3组件
前端·javascript·vue.js
Rhys..2 小时前
如何禁止chrome自动更新
前端·chrome
巴巴_羊2 小时前
AJAX 使用 和 HTTP
前端·http·ajax