当前位置:Gxlcms > JavaScript > 在vue-router中如何实现路由懒加载

在vue-router中如何实现路由懒加载

时间:2021-07-01 10:21:17 帮助过:13人阅读

这篇文章主要介绍了vue-router路由懒加载和权限控制的相关资料

vue-router路由懒加载 和权限控制,今天刚好搞了一个基于node token验证的小demo

所以下面介绍下,路由懒加载

1、为什么要使用路由懒加载呢

用vue.js写单页面应用时,会出现打包后的JavaScript包非常大,影响页面加载,我们可以利用路由的懒加载去优化这个问题,当我们用到某个路由后,才去加载对应的组件,这样就会更加高效

2、用法

import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)
export default new Router({
 routes: [
  {
   path: '/',
meta: {
requiresAuth: true
},
   component: resolve => require(['components/Hello.vue'], resolve)
  },
  {
    path: '/about',
    component: resolve => require(['components/About.vue'], resolve)
  }
 ]
})

3、对路由钩子进行权限控制

//注册全局钩子用来拦截导航

router.beforeEach((to, from, next) => {
 //获取store里面的token
 let token = store.state.token;
 //判断要去的路由有没有requiresAuth
 if(to.meta.requiresAuth){
  if(token){
   next();
  }else{
   next({
    path: '/login',
    query: { redirect: to.fullPath } 
// 将刚刚要去的路由path(却无权限)作为参数,方便登录成功后直接跳转到该路由
   });
  }
 
 }else{
  next();//如果无需token,那么随它去吧
 }
});

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

使用js如何实现焦点图效果

使用JQUERY如何实现多个AJAX请求

在JavaScript中统记重复元素出现的次数

在form表单中有关数据封装并提交的过程

以上就是在vue-router中如何实现路由懒加载的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行