vue循环滚动插件vue-seamless-scroll

1.安装
npm install vue-seamless-scroll --save

2.main.js文件里面引入使用:

import scroll from 'vue-seamless-scroll'
Vue.use(scroll)

3.示例参考地址
添加链接描述

4.使用
vue循环滚动插件vue-seamless-scroll_第1张图片
vue循环滚动插件vue-seamless-scroll_第2张图片
在这里插入图片描述

import vueSeamlessScroll from 'vue-seamless-scroll'
  components: {
    vueSeamlessScroll
  },
      <vueSeamlessScroll :data=newIncomeList  :class-option="classOption" class="incomeList-over">
        <ul>
          <li v-for="(item,index) in newIncomeList" :key="index">
          </li>
        </ul>
      </vueSeamlessScroll>
  computed: {
    classOption () {
      return {
        step: 0.2, // 数值越大速度滚动越快
        limitMoveNum: 1, // 开始无缝滚动的数据量 this.dataList.length
        hoverStop: false, // 是否开启鼠标悬停stop
        direction: 1, // 0向下 1向上 2向左 3向右
        openWatch: true, // 开启数据实时监控刷新dom
        singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
        singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
        waitTime: 1000 // 单步运动停止的时间(默认值1000ms)
      }
    }
  },

5.通过api请求后台数据,发现数据没有展示 控制台查看时 ul标签高度为o,在数据获取前 dom就先渲染了。
一,解决方法可以使用官网的方法。
https://cn.vuejs.org/v2/guide/list.html#%E6%9B%BF%E6%8D%A2%E6%95%B0%E7%BB%84

二,在请求成功的回调函数中使用this.$nextTick()。

            that.$nextTick(() => {
              that.newIncomeList = data.body.dataList
            })

你可能感兴趣的:(vue循环滚动插件vue-seamless-scroll)