一、报错分析 报错的Vue warn截图: 警告inject() can only be used inside setup() or functional components. 直接机翻:Inject()只能在setup()或功能组件中使用。 查看文档 因为我们在 setup 里面没有访问 this,所以我们不能再直接访问 this.router或this.route。作为替代,我们使用 useRouter 和 useRoute 函数:...
import{ useRouter }from'vue-router'constrouter = useRouter()constparams = {id:'1',name:'ly',phone:13246566476,age:23}consttoDetail =() =>router.push({name:'detail', params })<template><el-buttontype="danger"@click="toDetail">查看情页</el-button></template> 在接收页面尝试渲染 prams...
在路由文件中使用Vue.use(router)的语句无法正常启动服务,并且浏览器报错,提示‘use’并未定义,vue中没有use()这个方法。 经过查找资料后发现,这种加载vue-router的方式是vue2使用的,但我现在用的是vue3,我现在需要使用vue3的方式来导入vue-router。 首先,在路由文件里,我们已经不再需要通过下面这三句程序来导入...
vue3 报这个错误: vue-router.mjs:35 [Vue Router warn]: <router-view> can no longer be used directly inside <transition> or <keep-alive>. Use slot props instead: <router-view v-slot="{ Component }"> <keep-alive> <component :is="Component" /> </keep-alive> </router-view> v-slot...
Vue3中在vuex中使用路由报错,TypeError:Cannotreadpropertiesofundefined(reading'push')vue3中同样使用改方式:import{useRouter}from'vue-router';constrouter=useRouter();router.push()useRoute, useRouter必须写到setup中,强行在函数
vue3 报这个错误: vue-router.mjs:35 [Vue Router warn]: <router-view> can no longer be used directly inside <transition> or <keep-alive>. Use slot props instead: <router-viewv-slot="{ Component }"> <keep-alive> <component :is="Component" /> ...
vue3 报这个错误: vue-router.mjs:35 [Vue Router warn]: <router-view> can no longer be used directly inside <transition> or <keep-alive>. Use slot props instead: <router-view v-slot="{ Component }"> <keep-alive> <component :is="Component" /> ...
vue3的vue-router定义报错? zgwww 211821 发布于 2022-09-09 广东 使用vue3的"vue-router": "^4.1.5"版本定义useRouter打印出来未定义。 请问这种要怎么解决? vue3vue-routervue.js路由前端 有用关注3收藏 回复 阅读3.7k 3 个回答 得票最新 hfhan 29k72241 发布于 2022-09-14 安徽 更新于 2022-09-...
useRouter一定要放在setup方法内的顶层,否则作用域改变useRouter()执行返回的是undefined。 正确使用 import { useRouter } from 'vue-router'; const router = useRouter(); const toLogin = () => { router.push({ name: 'login' }); }; 错误使用 ...
import { useStore } from '@/store/index' import { useRouter } from 'vue-router' const sore = useStore(); const route = useRouter(); 在封装的axios里没有setup,所以应该这样引用,和main.ts引用一样 #main.ts import { createApp } from 'vue' import ElementPlus from 'element-plus' import...