Files
cssd-back/resources/js/show/router/index.js
T
2019-11-09 14:13:52 +03:30

97 lines
2.2 KiB
JavaScript
Vendored

/**
* Vue Router
*
* @library
*
* https://router.vuejs.org/en/
*/
// Lib imports
import Vue from 'vue'
// import VueAnalytics from 'vue-analytics'
import Router from 'vue-router'
// import Meta from 'vue-meta'
// import { TokenService } from '@/services'
// Routes
import paths from './paths'
function route (options) {
let path = options.path;
let view = options.view;
let name = options.name;
let meta = (options.meta) ? options.meta : '';
return {
name: name || view,
path,
meta,
component: (resovle) => import(
`@show/views/${view}.vue`
).then(resovle)
}
}
Vue.use(Router)
// Create a new router
const router = new Router({
mode: 'history',
routes: paths.map(path => route(path)).concat([
{ path: '*', redirect: '/' }
]),
// scrollBehavior (to, from, savedPosition) {
// if (savedPosition) {
// return savedPosition
// }
// if (to.hash) {
// return { selector: to.hash }
// }
// return { x: 0, y: 0 }
// }
})
// Vue.use(Meta)
// import {$hasRole} from '@/services/acl/role';
// router.beforeEach((to, from, next) => {
// const isPublic = to.matched.some(record => record.meta.public);
// const onlyWhenLoggedOut = to.matched.some(record => record.meta.onlyWhenLoggedOut);
// const loggedIn = !!TokenService.getToken();
// const roles = (to.meta && to.meta.roles) ? to.meta.roles : null;
//
// if (!isPublic && !loggedIn) {
// return next({
// path:'/login',
// query: {redirect: to.fullPath} // Store the full path to redirect the user to after login
// });
// }
//
// // Do not allow user to visit login page or register page if they are logged in
// if (loggedIn && onlyWhenLoggedOut && policy) {
// return next('/')
// }
//
// // Do not allow user to visit Pages then not access roles
// if (roles && !$hasRole(roles)) {
// return next('/')
// }
//
// next();
// });
// Bootstrap Analytics
// Set in .env
// https://github.com/MatteoGabriele/vue-analytics
// if (process.env.GOOGLE_ANALYTICS) {
// Vue.use(VueAnalytics, {
// id: process.env.GOOGLE_ANALYTICS,
// router,
// autoTracking: {
// page: process.env.NODE_ENV !== 'development'
// }
// })
// }
export default router