千家信息网

vue中路由跳转的方式有哪些

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,这篇文章主要讲解了"vue中路由跳转的方式有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"vue中路由跳转的方式有哪些"吧!第一种方式:route
千家信息网最后更新 2025年02月03日vue中路由跳转的方式有哪些

这篇文章主要讲解了"vue中路由跳转的方式有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"vue中路由跳转的方式有哪些"吧!

    第一种方式:router-link (声明式路由)

    1. 不带参数  //name,path都行, 建议用name  // 注意:router-link中链接如果是'/'开始就是从根路由开始,如果开始不带'/',则从当前路由开始。2.带参数  // params传参数 (类似post)// 路由配置 path: "/home/:id" 或者 path: "/home:id" // 不配置path ,第一次可请求,刷新页面id会消失// 配置path,刷新页面id会保留// html 取参  $route.params.id// script 取参  this.$route.params.id

    第二种方式:router.push(编程式路由)

    // 字符串router.push('home')// 对象router.push({ path: 'home' })// 命名的路由router.push({ name: 'user', params: { userId: '123' }})// 带查询参数,变成 /register?plan=privaterouter.push({ path: 'register', query: { plan: 'private' }})

    注意:如果提供了 path,params 会被忽略,上述例子中的 query 并不属于这种情况。取而代之的是下面例子的做法,你需要提供路由的 name 或手写完整的带有参数的 path:

    const userId = '123'router.push({ name: 'user', params: { userId }}) // -> /user/123router.push({ path: `/user/${userId}` }) // -> /user/123// 这里的 params 不生效router.push({ path: '/user', params: { userId }}) // -> /user

    第三种方式:this.$router.push() (函数里面调用)

    1.  不带参数this.$router.push('/home')this.$router.push({name:'home'})this.$router.push({path:'/home'})2. query传参 this.$router.push({name:'home',query: {id:'1'}})this.$router.push({path:'/home',query: {id:'1'}})// html 取参  $route.query.id// script 取参  this.$route.query.id3. params传参this.$router.push({name:'home',params: {id:'1'}})  // 只能用 name// 路由配置 path: "/home/:id" 或者 path: "/home:id" ,// 不配置path ,第一次可请求,刷新页面id会消失// 配置path,刷新页面id会保留// html 取参  $route.params.id// script 取参  this.$route.params.id4. query和params区别query类似 get, 跳转之后页面 url后面会拼接参数,类似?id=1, 非重要性的可以这样传, 密码之类还是用params刷新页面id还在params类似 post, 跳转之后页面 url后面不会拼接参数 , 但是刷新页面id 会消失**注意:获取路由上面的参数,用的是$route,后面没有r**

    第四种方式:this.$router.replace() (用法同上,push)

    第五种方式:this.$router.go(n)

    this.$router.go(n)向前或者向后跳转n个页面,n可为正整数或负整数ps : 区别this.$router.push跳转到指定url路径,并想history栈中添加一个记录,点击后退会返回到上一个页面this.$router.replace跳转到指定url路径,但是history栈中不会有记录,点击返回会跳转到上上个页面 (就是直接替换了当前页面)this.$router.go(n)向前或者向后跳转n个页面,n可为正整数或负整数

    params是路由的一部分,必须要有。query是拼接在url后面的参数,没有也没关系。
    params一旦设置在路由,params就是路由的一部分,如果这个路由有params传参,但是在跳转的时候没有传这个参数,会导致跳转失败或者页面会没有内容。

    params、query不设置也可以传参,但是params不设置的时候,刷新页面或者返回参数会丢失,

    两者都可以传递参数,区别是什么?

    query 传参配置的是path,而params传参配置的是name,在params中配置path无效

    query在路由配置不需要设置参数,而params必须设置

    query传递的参数会显示在地址栏中

    params传参刷新会无效,但是query会保存传递过来的值,刷新不变

    感谢各位的阅读,以上就是"vue中路由跳转的方式有哪些"的内容了,经过本文的学习后,相信大家对vue中路由跳转的方式有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

    路由 参数 页面 配置 方式 整数 内容 就是 学习 例子 情况 时候 第一次 路径 上上 重要 取而代之 没关系 做法 函数 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海证券报网络安全 服务器时间与本机时间设置不同 用友财务软件后台数据库 重庆服务器托管哪个牌子质量好 潍坊网络安全工程师最新招聘信息 政府软件开发合同变更 测试云服务器配置 网络技术哪个网站开发好 网络安全法测试卷 星巴克绑卡服务器有问题 ip摄像头怎么连接服务器 mysql使用数据库的指令 维护网络安全,注重舆论引导 腾讯海外服务器需要备案吗 部队网络安全保密心得 靠谱的erp财务软件开发流程 绯石之心无服务器 网络安全与信息化发展的论文 华为云服务器连接本地usb 上海思华网络技术走线公司 dataframe 数据库 网络安全威胁分析系统 东阳电力监控软件开发 达梦数据库导出库 日照港集团财务管理和软件开发 双网口服务器如何接两个交换机 基因组数据库的优势 服务器能屏蔽网站吗 微课与网络技术 南京做软件开发工资多少
    0