用ajax动态渲染数据时,我的better-scroll必须加settimeout延时才能实现滑动效果,为什么?

来源:8-5 Vue项目城市选择页 - 页面的动态数据渲染

慕工程9397259

2020-09-04

老师,您好。
我编写list.vue中的better-scroll初始化代码时,数据写死时没问题,但是用city.vue传过来的ajax数据渲染时,滑动效果不成功。必须加一个settimeout延时才能实现滑动效果。
这是为什么呢?
mounted () {
setTimeout(() => { this.scroll = new Bscroll(this.$refs.wrapper) }, 1000)
},

写回答

1回答

Dell

2020-09-05

updated的时候,你this.scroll.refresh(),写这么一句话,也可以。因为当你数据变化之后,需要更新swiper,但是你并没有更新,swiper就不好用。

0
3
weixin_慕斯卡5590756
回复
慕UI7079248
updated(){ this.scroll.refresh() } 里 因为页面初始的值是空的 然后父组件进来数据后将空值重新设置了,所以需要更新一下
2020-11-01
共3条回复

Vue2.5-2.6-3.0开发去哪儿网App 零基础入门到实战

课程紧跟Vue3版本迭代,企业主流版本Vue2+Vue3全掌握

10675 学习 · 8191 问题

查看课程