首页 > 其他分享 >vue3路由的两种引入方式useRouter和router进行页面跳转

vue3路由的两种引入方式useRouter和router进行页面跳转

时间:2023-08-01 21:34:42浏览次数:41  
标签:route 跳转 vue3 router useRouter 路由

1.在vue3中有两种路由的引入方式

第一种

import { useRouter } from 'vue-router'
const use_router = useRouter()
use_router.push('/pathName')

第二种

import router from '@/router'
router.push('/pathName')

 2.两种方式的区别

2.1.第一种方式的使用位置

在vue3中,使用在组件的带setup属性的script标签内

    <script setup>
      import { useRouter } from "vue-router"
      const router = useRouter()
    </script>

2.2.第二种方式的使用位置

适用于vue3和vue2版本,可以使用在任意文件中(js文件和vue文件)

main.js中

3.vue3中使用useRouter---操作路由的跳转

3.1.在vue3中,不能和vue2一样使用this.$router,必须通过导入路由API来使用 

      import { useRouter } from "vue-touter"

3.2.useRouter也是一个函数,需要在setup里定义一个变量来获取当前路由

       const router = useRouter()

3.3.此时,就可以通过定义的router来操作路由进行页面的跳转等操作

    // 跳转首页
    router.push({
      name: 'home',
    })
    // 返回上一页
    router.back()

4.vue3中使用useRoute获取路由信息

4.1.在vue3中,不能和vue2一样使用this.$route(this.$route.params),也必须通过导入路由API来使用

       import { useRoute } from "vue-router"

4.2.在setup里定义一个变量来获取当前的路由信息

       const route = useRoute()

4.3.此时,就可以通过定义的route来获取当前的路由信息

    // 获取路由名称
    console.log(route.name)

    // 获取路由参数
    console.log(route.params.id)
    // 获取路由元信息
    console.log(route.meta.xxx)

 

 

参考---https://blog.csdn.net/weixin_49042147/article/details/129430764

标签:route,跳转,vue3,router,useRouter,路由
From: https://www.cnblogs.com/pwindy/p/17599074.html

相关文章

  • vue3之父组件中封了子组件的抽屉(弹框类),通过update:modelValue来进行父子组件的v-mod
    eg:父组件a.vue<AddAiDrawer:projectId="route.query.id"v-model="addAiShow"title="新增"type="spaceAi"@call-back-table="refreshTa......
  • vuex和Pinia使用上的区别-Vue3推荐上Pinia
    Vuex和Pinia都是Vue.js状态管理库,可以管理组件之间的共享状态。它们的区别在于实现方式和API设计。Vuex是Vue.js的官方状态管理库,采用集中式的方式管理全局的状态。在Vuex中,应用程序的状态存储在一个单一的store中,组件只能通过dispatch、commit等方法来修改store中的状态。Vuex还提......
  • DVWA靶场搭建过程 & 遇到的问题解决(apache标红、无法跳转等等)
    问题会在最后汇总解答第一步准备工作首先需要搭建PHP环境和获取DVWA源代码搭建PHP环境:搜索phpstudy→鼠标移动至windows版→点击phpstudy客户端→下滑,下载phpStudy2018Windows版本【注意,选择下载路径必须全英文】→获取到一个安装包,暂时不用解压。获取DVWA源代码:输入网站......
  • three.js学习1(vue3)
    1.引入threejsnpminstall--savethree在组件内import*asTHREEfrom'three'2.创建容器创建canvas标签,为3D渲染建立容器<template><div><canvasid="three"></canvas></div></template>3.创建场景 Three.js依赖......
  • php跳转到指定网页
    1、php如何实现登录成功后跳转页面2、php如何跳转新窗口3、PHP如何登录完成跳转上一访问页面php如何实现登录成功后跳转页面php如何实现登录成功跳转页面跳转首先将判断用户是否登录成功php跳转到指定网页,如果登录成功则使用“header()”函数,将http请求头的“Location”设......
  • VUE3、ElementPlus 重构若依vue2 表单构建功能
    Vue3+ElementPlus+Vite重构若依Vue2表单构建功能若依官方的Vue3版本发布已经有段时间了,就是这个表单构建功能一直没有安排计划去适配到Vue3!前段时间公司需要做个类似的功能,就直接借鉴若依Vue2的来直接改了吐槽下:vuedraggable-vue3坑真多,官方文档一言难尽,现在不推荐使......
  • vue3
    一、vue3最终响应式原理letperson={name:'张三',age:15,}//我们管p叫做代理数据,管person叫源数据constp=newProxy(person,{//target代表的是person这个源对象,propName代表读取或者写入的属性名get(target,propName){console.log('有人......
  • vue3
    1、ref深拷贝视图层更新不改变源数据constnum=1constrefNum=ref(num)constclick=()=>{refNum++//refNum已经改变了,但原数据num不变}2、toRef源数据改变不更新视图3、toRefs传入一个响应式对象constobj=reactive{name:"iwen",age:19}//取值为obj.na......
  • 前端系列21集-vue3,轨迹展示
    AMap.InfoWindow<template><div><div:style="customStyle"class="custom-box"><!--Yourcontenthere--></div></div></template><scriptsetup>import{ref,reactive......
  • Vue3中使用TypeScript封装axios遇到的问题(AxiosRequestConfig)
    如果您有更好的解决方法,欢迎评论区评论。版本"dependencies":{"axios":"^1.0.0","vant":"^4.6.3","vue":"^3.3.4","vue-router":"^4.2.4","vuex":&quo......