vue3 获取当前路由信息失败问题
刷新浏览器时获取当前路由信息失败:undefined
import { ref, reactive, onMounted } from 'vue';
import { useRoute } from 'vue-router';
const route = useRoute();
onMounted(()=>{
// 打印当前路由信息
console.log('当前route', route ); // 这里的打印有值
console.log('当前路由名称', route.name ); // 这里的打印在刷新浏览器的时候会拿不到:undefined
})
解决:
失败原因是当前路由信息还未加载完成,使用isReady()
判断路由是否准备就绪
onMounted(async()=>{
await router.isReady(); // 等待路由准备就绪
// 打印当前路由信息
console.log('当前route', route ); // 这里的打印有值
console.log('当前路由名称', route.name ); // 这里正常拿到路由名称
})