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博客

相关推荐
codexu_4612291873 分钟前
NoteGen 里一条记录如何变成 Markdown
前端·笔记·rust·tauri
meilindehuzi_a6 分钟前
从 Canvas 到 Vibe Coding:HTML5 游戏开发入门与 AI 飞机大战实战
前端·人工智能·html5
Cc_Debugger7 分钟前
开发环境使用https配置
javascript·vue.js·https
lichenyang4539 分钟前
鸿蒙 Web 容器(一):怎么把一个 H5 页面嵌进鸿蒙页面?
前端
BreezeJiang10 分钟前
从一棵树到一亿人:算法世界的"深搜"哲学
javascript
廖磊AI编程16 分钟前
AI 编程项目缺少 Bun 时,如何用 BVM 安装和验证运行时
javascript
触底反弹17 分钟前
🎨 通义万相实战:用 Qwen 多模态 API 实现 AI 换装换姿势,10 行代码搞定!
vue.js·人工智能
#麻辣小龙虾#27 分钟前
vue3基于leaflet.js实现地图编辑功能
javascript·ecmascript·leaflet.js
AHRIKNOW32 分钟前
写一个 Fetch 封装库,没那么简单
javascript
奇奇怪怪的34 分钟前
浏览器线程与进程深度剖析
前端