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

相关推荐
DJ斯特拉2 分钟前
Vue工程化
前端·javascript·vue.js
秋深枫叶红3 分钟前
嵌入式第三十五篇——linux系统编程——exec族函数
linux·前端·学习
LinDon_9 分钟前
【vue2form表单中的动态表单校验】
前端·javascript·vue.js
一水鉴天19 分钟前
整体设计 之28 整体设计 架构表表述总表的 完整程序(之27 的Q268 )(codebuddy)
java·前端·javascript
DsirNg25 分钟前
使用 SSE 单向推送实现 系统通知功能
前端·javascript
IT_陈寒34 分钟前
SpringBoot 3.2 实战:用这5个新特性让你的API性能提升40%
前端·人工智能·后端
宋军涛36 分钟前
重操旧业,继续码农生活,温故vue moment类库和new Date()
vue.js·生活
霍理迪1 小时前
HTML初相识
前端·html
恋猫de小郭1 小时前
Android 宣布 Runtime 编译速度史诗级提升:在编译时间上优化了 18%
android·前端·flutter
莓莓儿~1 小时前
Next.js 14 App Router数据获取开发手册
开发语言·前端·javascript