vue 锚点定位问题

新手上路,请多包涵

通过点击子组件列表中的某元素,定位到父组件列表中对应的位置。我目前的做法是把父组件列表中元素到顶部的距离传给子组件,然后通过点击定位到相应的位置。但我这边遇到一个问题,当前页是没问题,但如果路由发生变化之后,父元素就获取不到dom元素了。

小白求大神解答,可能我的思路不是很好,如果有更好的方案提供就最好了。

阅读 2.4k
1 个回答

首先获取不到的元素是指?能具体说明一下吗?

下面是一个思路:
1.建立控制滚动的 vuex 属性 scrollTop,
2.通过 scrollTop,实现滚动控制
3.统一 scrollTop 的更新,点击锚点的时候更新数据,切换路由的时候清空
4.统一锚点的事件,最好是写在父节点,直接作为子节点的固定回调
5.设计一个点击事件,根据点击的锚点元素的计算到顶部元素的位移 更新 scrollTop
6.配置一个统一的样式作为子路由的顶级节点,方便计算

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题