解决vue3-seamless-scroll动态数据不滚动的方法
时间: 2024-05-29 11:07:48 浏览: 156
在vue3-seamless-scroll中,如果动态数据不滚动,可能是因为组件渲染时没有正确计算容器高度。解决方法如下:
1. 使用ref获取容器节点,通过设置容器高度为其父元素高度,可以确保容器高度计算正确。
2. 在数据更新时,手动调用scrollTo方法,可以使滚动条能够正确滚动。
代码示例:
```
<template>
<seamless-scroll ref="scroll" :list="list" :speed="80">
<div v-for="(item, index) in list" :key="index">{{ item }}</div>
</seamless-scroll>
</template>
<script>
import SeamlessScroll from 'vue3-seamless-scroll'
export default {
components: {
SeamlessScroll
},
data() {
return {
list: []
}
},
mounted() {
this.getList()
},
methods: {
getList() {
// 获取数据
// ...
// 设置数据
this.list = data
// 手动调用scrollTo方法
this.$nextTick(() => {
this.$refs.scroll.scrollTo(0, -this.$refs.scroll.$el.clientHeight)
})
}
}
}
</script>
阅读全文