我们在vue3的vue文件中可以这么使用router:
import { useRoute, useRouter } from 'vue-router' const router = useRouter() const route = useRoute() router.push({ path: '/activity', query: {id: 1} })
但是,如果在js中这么使用,就会报错:
import { useRoute, useRouter } from 'vue-router' console.log(useRouter()) // undefined
这是因为在vue3中上面的useRouter的引入方式是vue3的hooks,因此在js文件中需要导入你创建的router文件即可:
import router from '@/router/index' router.push('activity') // 正常跳转