首页 > 其他分享 >路由

路由

时间:2023-09-24 18:22:09浏览次数:27  
标签:hash URL popstate url 跳转 router 路由

// 全局路由守卫配置
router.beforeEach((to,from,next)=>{
    next(true);  
})

Hash 实现

hash是URL中hash(#) 以及后面部分组成,常用在作用锚点在页面内进行导航,改变URL中的hash部分不会引起页面刷新。

通过hash change时间监听URL的变化,改变URL的方式只有这几种;

  1. 通过浏览器前进后退
  2. 通过<a>标签改变URL
  3. 通过window.location改变URL

通过

location.hash     // 进行跳转

location.hash='/reg'     // 进行跳转

window.addEvenListener('hashchange',(e)=>{
    console.log(e)
})

history实现

history 提供了pushState 和 replaceState两个方法,这连个方法改变URL的path部分不会引起页面的刷新

history 提供类似hashchange事件popstate事件,但popstate事件有些不同:

  1. 通过浏览器前进后退改变URL时触发popstate事件
  2. 通过pushState/replaceState或<a>标签改变URL不会触发popstate事件
  3. 好在我们可以拦截pushState/replaceState的调用和<a>标签的点击事件来监测URL变化
  4. 通过js调用history的back,go,forward方法可触发该事件

所以监听URL变化可以实现,只是没有hashchange那么方便。

window.addEventListener('popstate',(e)=>{
    console.log(e)
})

名字跳转

<router-link :to="{name:'index'}">首页</router-link>

编程页面跳转

<button @click="toPage('/edit')">个人中心</button>


<script setup lang="ts">
    import { useRouter } from 'vue-router'

    const router = useRouter()

    const toPage = (url:string)=>{
        // 字符串
        router.push(url);
        //对象
        // 命名格式
        router.push({
            // path:url,
            name:url
        })
    }
</script>

不存在历史记录

  • roterlink 直接诶加上replace

    • 首页
  • router.replace(url);

路由传参

query方式传参

image-20230901183539203

image-20230901185521220

image-20230901185634243

标签:hash,URL,popstate,url,跳转,router,路由
From: https://www.cnblogs.com/lmq886/p/17726387.html

相关文章

  • 锐捷路由直接通过NAT访问猫棒
    拓扑目的:直接访问192.168.1.10g0/0/1口为华为猫棒,自动配置192.168.1.10为后台g0/0/2口为电脑直连原理因为路由每个口只能分配一个网段,不能与猫棒作为同一网段,所以必须做NAT转换。命令路由为锐捷RSR-30-X(V1.5)g0/0/1口配置Ruijie#conftRuijie(config)#intg......
  • Flutter路由插件fluro详解
    fluro的使用fluro的介绍fluro是一个流行的Flutter插件,用于实现高级路由管理。它提供了灵活的路由配置和导航功能,支持命名路由、参数传递、路由拦截、动画效果等,使得在Flutter应用程序中管理页面导航变得更加简单和可扩展。下面是对fluro插件的详细介绍:安装和导入:您可以通过在pu......
  • 路由跳转需要带参
    表格数据分页,分页数据刷新数据不丢失分页时跳转router.push({name:route.name,params:{page:currentPage.value},query:{search:search.value},});其中route.name代表跳转的路径别名params代表路由跳转所带的参数,需要在路由中配置{path......
  • 从零开始学习Vue3路由,提升你的前端开发技能
    Vue3是当前最流行的前端框架之一,它提供了许多方便的功能和工具,其中路由(Router)就是其中之一。本文将介绍如何在Vue3中使用路由。安装和使用VueRouter首先,我们需要安装VueRouter。在终端中输入以下命令:npminstallvue-router@next--save接下来,我们需要创建一个路由实例。在......
  • 14-2 OSPF默认路由引入实验
    实验一会配置OSPF下发默认路由,一般在出口设备配置下发默认路由,出口连接运营商,通过下发默认路由将数据引导至出口设备,再转交给运营商拓扑AR2模拟运营商配置PC1配置LSW1配置<Huawei>sys[Huawei]sysLSW1[LSW1]vlanbatch1020[LSW1]integi0/0/2[LSW1-GigabitEth......
  • 用于异构无线传感器网络的多聚合器多链路由协议(Matlab代码实现)
     ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。......
  • OSPF路由引入
    路由引入原因由于不同路由协议之间的路由算法、机制、开销等不同,不同的路由协议之间无法直接分享彼此的路由;此时就需要通过路由引入技术将某个路由协议的路由引入到另一个路由协议中也可以相同路由协议之间引入RIP与OSPF引入位置在ASBR路由器执行引入指令OSPF引入RIP[R8]ospf......
  • 路由器和交换机
    交换机与路由器的特点:交换机(Switch):用于在局域网中传输数据帧基于MAC地址进行转发和过滤工作在数据链路层(第二层)具有多个端口,可以连接多台计算机或其他网络设备支持全双工通信,提供高速的内部数据传输路由器(Router):用于在不同网络之间转发数据包根据IP地址进行转发和路由选择工作在网......
  • 【原创】思科路由器时间问题
        大家好,我是你们的龙少一郎兄台了。许久,没有发表相关内容来犒劳大家了,今天即兴给大家来篇他人遇到问题后为其解疑答惑的一些小小算是总结吧。大神,飘过;小白,可以路过!在思科路由器中我们经常遇到一些关于时间的问题,比如经常有人问到的,我怎么看系统运行时间、怎么看现在的......
  • 路由器PLC接入和多链路组网的区别?
    路由器PLC接入和多链路组网都是现代网络技术中的重要概念,但它们在实现方式和应用场景上存在明显的区别。路由器PLC接入:路由器PLC接入是一种通过电力线通信(PLC)技术实现的网络接入方式。它将PLC模块与路由器连接,使得电力线不仅能够传输电力,还可以作为数据传输的通道。这种方式利用......