nvue下list组件的pagingEnabled分页模式,如何设置默认展示页码,比如说我现在打开页面就默认展示第三页的内容;现在使用scrollTop计算高度的方式可以设置,但是往上滑动会让滚动条瞬间回到顶部
- 发布:2020-09-01 17:54
- 更新:2022-05-06 10:50
- 阅读:2134
nicepainkiller - 最爱 dcloud
铁子 我刚刚 实验出一种方式:
list组件 的数据 你先 给他设置 长度为1 也就是默认 展示的数据;
然后延迟 200毫秒,把他后面的数据 和前面的数据 给她 拼接 上
就可以做的了 也不会闪屏啥的
实践 的时候 默认显示位置 OK了, 索引之后的数据 也可以翻页出来
索引之前的数据 拼接的时候会出问题
nicepainkiller - 最爱 dcloud
还有种思路
list 组建中 的 cell 有三种组成, 索引之前 当前索引 索引之后 三部分组成
然后等当前 索引数据显示了, 再去加载 索引之前和 索引之后的数据
突然好想你 (作者)
暂时用计算高度的方式实现了;
计算打开的是第几页,然后计算每页的高度单页的高度(也就是屏幕的高度)然后设置scrollTop;
这样会显示正常的位置,但是向下滑动会瞬间置顶,这时需要使用list设置滚动条的函数;
setTimeout(() => {
// 设置list滚动条的位置,防止下拉翻页时会直接回到顶部
this.scrollTop = 单页的高度(也就是屏幕的高度) 要展示第几页;
setTimeout(() => {
const el = this.$refs[“要展示页的ref(一般是动态的)”][0];
// offset必须有值,否则就会瞬间回到顶部
dom.scrollToElement(el, {
offset: 1
});
setTimeout(() => {
uni.hideLoading();
this.isFirstLoading = false;
}, 500);
}, 500);
}, 100);过程中会有闪动,用蒙层遮罩一下,延时再加载出来基本就没问题了
2020-09-21 14:16