vue 结合vue-seamless-scroll实现列表滚动

vue yekong

vue 数据可视化大屏 项目中要求列表可以自动滚动,当前使用的是vue2实现的效果,如果要使用vue3的话,可以通过vue3 使用vue3-seamless-scroll实现列表无缝滚动插件实现.
vue 结合vue-seamless-scroll实现列表滚动

安装依赖

# vue3
# yarn
yarn add @meruem117/vue-seamless-scroll@latest --dev
# npm
npm i @meruem117/vue-seamless-scroll@latest --save-dev

# vue2
# yarn
yarn add @meruem117/vue-seamless-scroll@latest-v2 --dev
# npm
npm i @meruem117/vue-seamless-scroll@latest-v2 --save-dev

main.js

import Vue from 'vue'
import App from './App.vue'

Vue.config.productionTip = false

import VueSeamlessScroll from '@meruem117/vue-seamless-scroll'
Vue.use(VueSeamlessScroll)

new Vue({
  render: h => h(App),
}).$mount('#app')

App.vue

<template>
    <div id="app">
        <div class="box">
            <vue-seamless-scroll class="list" :data="data" direction="top" :steep="0.5" roller :distance="20">
                <div class="list-item" v-for="item, index in data" :key="index">{{ item.text }}</div>
            </vue-seamless-scroll>
        </div>
    </div>
</template>

<script>
export default {
    name: 'App',
    data() {
        return {
            data: [
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
                { text: 'test' },
            ]
        }
    },
}
</script>

<style scoped>
.box {
    width: 100%;
    height: 200px;
    padding-top: 50px;
    display: flex;
    justify-content: center;
}

.list {
    height: 300px;
    overflow: hidden;
}

.list-item {
    width: 500px;
    height: 100px;
    margin-bottom: 20px;
    color: #000;
    font-size: 14px;
    background-color: aliceblue;
}
</style>

Api

属性 说明 类型 默认值
direction 滚动的方向 'top' 'bottom'
steep 滚动的速率 number 0.5
roller 是否可以使用滚轮滚动 boolean true
distance 滚轮滚动的速率 number 20
data 接收异步数据,同步任务可不传 array -

Tips

如没有显示请为嵌入的标签设置字体大小
当 direction 为 top 或 bottom 时,要为组件设置高度;当 direction 为 left 或 right 时,要为组件设置宽度

喜欢