base ui
This commit is contained in:
66
ui/src/router/index.js
Normal file
66
ui/src/router/index.js
Normal file
@@ -0,0 +1,66 @@
|
||||
import {
|
||||
createMemoryHistory,
|
||||
createRouter,
|
||||
createWebHashHistory,
|
||||
createWebHistory,
|
||||
} from 'vue-router'
|
||||
import routes from './routes'
|
||||
import useLoginStore from 'stores/login'
|
||||
|
||||
/*
|
||||
* If not building with SSR mode, you can
|
||||
* directly export the Router instantiation;
|
||||
*
|
||||
* The function below can be async too; either use
|
||||
* async/await or return a Promise which resolves
|
||||
* with the Router instance.
|
||||
*/
|
||||
|
||||
const createHistory = process.env.SERVER
|
||||
? createMemoryHistory
|
||||
: (process.env.VUE_ROUTER_MODE === 'history'
|
||||
? createWebHistory
|
||||
: createWebHashHistory)
|
||||
|
||||
const Router = createRouter({
|
||||
scrollBehavior: () => ({ left: 0, top: 0 }),
|
||||
routes,
|
||||
|
||||
// Leave this as is and make changes in quasar.conf.js instead!
|
||||
// quasar.conf.js -> build -> vueRouterMode
|
||||
// quasar.conf.js -> build -> publicPath
|
||||
history: createHistory(process.env.VUE_ROUTER_BASE),
|
||||
})
|
||||
|
||||
Router.beforeEach(
|
||||
(to, from) => {
|
||||
const loginStore = useLoginStore()
|
||||
|
||||
const isLoggedIn = loginStore.IsLoggedIn()
|
||||
|
||||
// instead of having to check every route record with
|
||||
// to.matched.some(record => record.meta.requiresAuth)
|
||||
|
||||
if (to.meta.requiresAuth && !isLoggedIn &&
|
||||
((to.path !== '/') || (to.path !== 'login'))) {
|
||||
// this route requires auth, check if logged in
|
||||
// if not, redirect to login page.
|
||||
|
||||
return {
|
||||
path: '/login',
|
||||
// save the location we were at to come back later
|
||||
//query: { redirect: to.fullPath },
|
||||
}
|
||||
}
|
||||
|
||||
if ((isLoggedIn) && ((to.path === '/') || (to.path === 'login'))) {
|
||||
return {
|
||||
path: '/panel',
|
||||
query: '',
|
||||
}
|
||||
}
|
||||
},
|
||||
)
|
||||
|
||||
export default Router
|
||||
|
||||
Reference in New Issue
Block a user