vue实现界面跳转
路由配置
在Vue项目中实现界面跳转通常依赖Vue Router。需在router/index.js中配置路由路径和组件映射关系:
import { createRouter, createWebHistory } from 'vue-router'
import Home from '../views/Home.vue'
import About from '../views/About.vue'
const routes = [
{ path: '/', component: Home },
{ path: '/about', component: About }
]
const router = createRouter({
history: createWebHistory(),
routes
})
export default router
声明式导航
在模板中使用<router-link>组件实现跳转,适合菜单或导航栏场景:

<router-link to="/">首页</router-link>
<router-link to="/about">关于</router-link>
编程式导航
通过router.push()方法在JavaScript中控制跳转逻辑:
// 基本路径跳转
this.$router.push('/about')
// 带参数跳转
this.$router.push({ path: '/user', query: { id: '123' } })
// 命名路由跳转(需提前在路由配置中定义name属性)
this.$router.push({ name: 'user', params: { username: 'admin' } })
动态路由匹配
通过冒号语法实现参数化路由:

// router/index.js
{ path: '/user/:id', component: User }
// 组件中获取参数
this.$route.params.id
导航守卫
在路由跳转前后添加控制逻辑:
router.beforeEach((to, from, next) => {
if (to.meta.requiresAuth && !isAuthenticated) {
next('/login')
} else {
next()
}
})
路由懒加载
优化性能的动态导入方式:
const User = () => import('../views/User.vue')
路由传参方式对比
- query参数:显示在URL中,通过
this.$route.query获取 - params参数:需命名路由配合,通过
this.$route.params获取 - props传参:在路由配置中设置
props: true可将params转为组件props





