import Vue from 'vue'; import Router from 'vue-router'; const _import = require('./_import_' + process.env.NODE_ENV); // in development env not use Lazy Loading,because Lazy Loading large page will cause webpack hot update too slow // so only in production use Lazy Loading /* layout */ import Layout from '../views/layout/Layout'; /* login */ const Login = _import('login/index'); /* dashboard */ const dashboard = _import('dashboard/index'); /* error page */ const Err404 = _import('404'); const Page = _import('page/index'); Vue.use(Router); /** * icon : the icon show in the sidebar * hidden : if hidden:true will not show in the sidebar * redirect : if redirect:noredirect will not redirct in the levelbar * noDropdown : if noDropdown:true will not has submenu * meta : { role: ['admin'] } will control the page role **/ export const constantRouterMap = [ { path: '/404', component: Err404, hidden: true }, { path: '/', component: Layout, redirect: '/dashboard', name: '首页', hidden: true, children: [{ path: 'dashboard', component: dashboard }] } ] export default new Router({ // mode: 'history', //后端支持可开 scrollBehavior: () => ({ y: 0 }), routes: constantRouterMap }); export const asyncRouterMap = [ { path: '/example', component: Layout, redirect: 'noredirect', name: 'page', icon: 'zonghe', children: [ { path: 'index', component: Page, name: 'page' } ] }, { path: '*', redirect: '/404', hidden: true } ];