如何实现滑动右侧列表,更新当前分类,并且点击某个分类项目,右侧列表滑动到对应位置?

在做一个外卖项目时,需要实现商家信息组件中,滑动右侧列表更新当前分类,并点击分类项使右侧列表滑动到对应位置。通过设置current作为当前分类标识,利用计算属性currentIndex结合scrollY(滑动Y轴坐标)和tops(分类li的top数组)进行计算。主要涉及实时收集scrollY、获取tops、回弹滑动、监听滑动、点击定位等逻辑。
摘要由CSDN通过智能技术生成

之前做项目的时候遇到一个问题,当时把他记录到有道云笔记上了,现在把他分享到博客上,希望能够给遇到同样问题的大家一点小小的帮助。做一个外卖的项目的时候,商家信息哪一个组件,如何实现滑动右侧列表,更新当前分类,并且点击某个分类项目,右侧列表滑动到对应位置?

分析:

当前分类

当滑动右侧列表时,更新当前分类

点击某个分类项,右侧列表滑动到对应位置

类名:current 当前标识

设计一个计算属性:currentIndex

根据哪些数据计算?

scrollY:右侧滑动的Y轴坐标(滑动过程t实时变化)

tops:所有右侧分类li的top组成的数组 (列表第一次显示后就不变了)

步骤:

1、在滑动的过程中,实时收集scrrollY

2、列表第一次显示后,收集tops

3、实现currentIndex的计算逻辑

总结: current 标识当前分类,设计一个计算属性currentIndex,根据scrollY(右侧滑动的Y轴坐标)和tops(所有右侧分类li的top组成的数组 => 列表第一次显示后就不变了),在列表滑动过程中,实时收集scrollY,列表第一次显示后,收集tops,实现currentIndex的计算逻辑。

 

(1)实现回弹滑动,列表来回滑动:在action.js中添加一个回调函数,在组件中进行应用,使用用 this.$nextTick&#x

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值