[前端工具]vue2框架实现perfect-scrollbar简单使用

基本介绍

完美滚动条 (Perfect Scrollbar) 是一个轻量级的 JavaScript 库,用于创建美观且功能丰富的自定义滚动条,它在现代浏览器中提供了一个优雅的解决方案来替代默认的系统滚动条。这个库支持多种定制选项,包括对触摸设备的支持,非常适合那些寻求增强用户体验的Web开发

安装

npm install perfect-scrollbar --save

使用

在这里我们以表格为例,这里我们使用的vue2框架

比如我们要给表格添加一个滚动条

首先引入滚动条

import PerfectScrollbar from 'perfect-scrollbar'

在data中准备一个ps用来实例化滚动条

  data() {
    return {
      ps: null, // perfectScrollbar
  },

在methods中准备初始化方法,对滚动条进行初始化,在mounted钩子里面调用,注意如果滚动条的渲染比较晚,在created里面拿不到的,要等到nextTick第一次渲染后才能拿到

  <el-table ref="alarmTable">XXX</el-table>

  methods: {
    initPs () {
      this.$nextTick(() => {
        // 给表格设置ref为alarmTable,通过$refs.bodyWrapper取到实例,初始化滚动条
        this.ps = new PerfectScrollbar(this.$refs.alarmTable.bodyWrapper)
      })
    },
  }

  mounted () {
    this.$nextTick(() => {
      this.initPs()
    })
  },

现在以及初始化完成了,那么我们对滚动条做一些基本的使用

监听滚动条,页面滚动,滚动条刷新:

  watch: {
    // 此处data为表格数据
    data () {
      this.$nextTick(() => this.ps.update())
    }
  },

当滚动条滚动到底时触发事件:

// 添加监听器
mounted () {
    this.$refs.alarmTable.bodyWrapper.addEventListener('ps-y-reach-end', this.onYReachEnd)
},

methods: {    
    onYReachEnd () {
      // 触发事件 做点什么
      this.$emit('y-reach-end');
    },
}

销毁实例

  beforeDestroy () {
    if (this.ps) {
      this.ps.destroy()
    }
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林林总肿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值