vue中路由的配置

本文详细介绍了如何在Vue项目中配置路由,包括创建router目录及文件、定义路由组件、设置路由守卫实现登录验证等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在src目录下创建router目录,创建index.js+routes.js

 routes.js中配置路由组件

export default {
          routes: [
                    {
                              path: '/',
                              name: 'login', // 登录页面
                              component: () => import('../views/login.vue')
                    },
                    {
                              path: '/home',
                              name: 'home', // 主页面
                              meta: {
                                        requireAuth: true // 是否需要登录判断
                              },
                              component: () => import('../views/home.vue'),
                              redirect: '/home/main', // 默认重定向到首页
                              children: [
                                        {
                                                  path: '/home/main',
                                                  name: 'main', // 首页
                                                  component: () => import('../views/main.vue')
                                        }]
}]
}

index.js:

import Vue from 'vue'
import Router from 'vue-router'
import Routes from './routes.js' // 引入上一步的路由页面组件
Vue.use(Router)
// 1.创建路由器
const router = new Router({
  /*mode:'history', 此模式目的去掉访问地址栏的# */
  routes:Routes.routes // 使用导出的路由页面组件
});
// 2.路由守卫
router.beforeEach((to, from, next) => {
  if (to.meta.title) {
    document.title = to.meta.title // 设置每页的网页标题
  }
  if (to.matched.some(record => record.meta.requireAuth)) { // 判断该路由是否需要登录
    if (window.sessionStorage.getItem('userInfo')) { // 判断当前的登录数据是否存在
      next()
    } else {
      // 非法登录
      next({ path: '/', query: {redirect: to.fullPath} })
    }
  } else {
    next()
  }
})

// 3.导出路由器
export default router;

main.js配置:

// 引入路由器
import router from './router'
export default new Vue({
  router,
  render: h => h(App)
}).$mount('#app')

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值