美文网首页
Vue添加锚点(兼容直接输入地址时scrollBehavior不

Vue添加锚点(兼容直接输入地址时scrollBehavior不

作者: 努力study代码的小哪吒 | 来源:发表于2020-09-17 10:52 被阅读0次
Vue添加锚点有很多方法,今天我们来说vue-router提供的一种

vue-router官网说明
锚点就是在链接中有#号的一个东西,我们可以通过router去做

const ROUTER_CONFIG = {
  mode: 'history',
  scrollBehavior (to, from, savedPosition) {
    if (to.hash) {
      console.log('hash', to.hash)
      return {
        selector: to.hash
      }
    }
  }
}
// 但是scrollBehavior使用时,前提是你的mode设置为history

这个方法因为是通过路由,但是假如我们直接输入地址的话,就不走这个方法了,所以需要我们自己写一个,其实location也提供给我们相应的监听hash的字段了

mounted () {
    const hash = location.hash
    if (hash) {
      const id = hash.split('#')[1]
      const ele = document.getElementById(id)
      setTimeout(() => {
        ele && ele.scrollIntoView(true)
      })
    }
  },

我们的view层代码

<div class="btn" :id="active.id === 2 ? 'coupon' : ''" @click="goTo(active.id)">
    {{ active.btnTitle }}
</div>

这样就可以都兼容了,无论是通过路由还是通过直接输入的链接都是可以正常锚点到的

相关文章

  • Vue添加锚点(兼容直接输入地址时scrollBehavior不

    Vue添加锚点有很多方法,今天我们来说vue-router提供的一种 vue-router官网说明锚点就是在链接中...

  • AI快捷键分享,看完果断收藏!

    工具箱 移动工具 【V】 直接选取工具、组选取工具 【A】 钢笔、添加锚点、删除锚点、改变路径角度 【P】 添加锚...

  • Ai快捷键

    选择 V 直接选择 A 编组选择 魔棒 Y 套索 Q 钢笔 P 添加锚点 = 删除锚点 - 转换锚点 Shift+...

  • echarts图中添加标志有备注的锚点

    echarts图中添加标志有备注的锚点 lineMarker.vue 组件文件 主页面文件

  • vue中使用锚点

    vue中直接使用锚点这个功能在没有引入vue-router之前是没有问题的,引入vue-router之后在未开启h...

  • Vue router

    Vue Router 1. 在Vue中引入router 2. 新建路由 如: scrollBehavior更多详情...

  • react-router 实现分析

    react-router 模式概览 hash (地址栏 # 做锚点,监听锚点后面地址的改变) history (...

  • uni-app 添加锚点和监听滚动切换tab

    添加锚点 监听滚动 示例

  • scroll-anchor

    介绍 实现点击一个锚点(导航),跳转到对应的区块;容器滚动时,对应的锚点高亮;项目演示地址http://admin...

  • vue 锚点

    在某些场景中,我们通常使用锚点,进行定位,跳转我们需要的页面 方法一a 标签的锚点跳转 如果在同一页面跳转,该方法...

网友评论

      本文标题:Vue添加锚点(兼容直接输入地址时scrollBehavior不

      本文链接:https://www.haomeiwen.com/subject/voqlyktx.html