vue3中的router和useRouter的区别

结论:从vue-router的官方文档中发现,useRouter需要在setup中使用,而router可以在任何组件中使用。 二者是等价的,适用场景不同。

问题:使用useRouter创建的实例,未能成功调用方法push()。会报错:Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'push')

javascript 复制代码
//错误场景:在js中调用useRouter
import { useRouter } from 'vue-router' 
const router = useRouter()

router.push({path:'/login'})

解决:改用router。

javascript 复制代码
import router from @/router'
router. push('/pathname')

原因:因为 useRouter只能在 setup中使用,如 以下场景:

router 适用面更广

参考:

vue3中的路由传参以及router和route的区别_useroute和userouter的区别_莫尔道嘎老范的博客-CSDN博客

vue3路由的两种引入方式useRouter和router进行页面跳转_userouter()_qq_26596795的博客-CSDN博客

相关推荐
likuolei4 分钟前
XSL-FO 软件
java·开发语言·前端·数据库
正一品程序员5 分钟前
vue项目引入GoogleMap API进行网格区域圈选
前端·javascript·vue.js
j***894611 分钟前
spring-boot-starter和spring-boot-starter-web的关联
前端
star_111216 分钟前
Jenkins+nginx部署前端vue项目
前端·vue.js·jenkins
im_AMBER24 分钟前
Canvas架构手记 05 鼠标事件监听 | 原生事件封装 | ctx 结构化对象
前端·笔记·学习·架构
JIngJaneIL25 分钟前
农产品电商|基于SprinBoot+vue的农产品电商系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·农产品电商系统
Tongfront30 分钟前
前端通用submit方法
开发语言·前端·javascript·react
c***727430 分钟前
SpringBoot + vue 管理系统
vue.js·spring boot·后端
可爱又迷人的反派角色“yang”33 分钟前
LVS+Keepalived群集
linux·运维·服务器·前端·nginx·lvs
han_33 分钟前
前端高频面试题之CSS篇(二)
前端·css·面试