add auth middleware, add page not found processing

This commit is contained in:
2019-02-17 14:32:14 +07:00
parent 9ba85fc872
commit 906b3e64ef
2 changed files with 37 additions and 0 deletions

View File

@@ -1,9 +1,19 @@
import Vue from 'vue'; import Vue from 'vue';
import Router from 'vue-router'; import Router from 'vue-router';
import Store from '@/store';
import NotFound from '@/views/Errors/NotFound';
import Home from '@/views/Home'; import Home from '@/views/Home';
Vue.use(Router); Vue.use(Router);
function AuthMiddleware(from, to, next) {
if (Store.getters.isUserAuthentificated) {
next();
} else {
next('/sign_in');
}
}
export default new Router({ export default new Router({
routes: [ routes: [
{ {
@@ -25,6 +35,7 @@ export default new Router({
path: '/profile', path: '/profile',
name: 'profile', name: 'profile',
component: () => import(/* webpackChunkName: "words" */ '@/views/Profile.vue'), component: () => import(/* webpackChunkName: "words" */ '@/views/Profile.vue'),
beforeEnter: AuthMiddleware,
}, },
{ {
path: '/sign_in', path: '/sign_in',
@@ -36,6 +47,10 @@ export default new Router({
name: 'signUp', name: 'signUp',
component: () => import(/* webpackChunkName: "sign_up" */ '@/views/SignUp.vue'), component: () => import(/* webpackChunkName: "sign_up" */ '@/views/SignUp.vue'),
}, },
{
path: '*',
component: NotFound,
}
], ],
mode: 'history', mode: 'history',
}); });

View File

@@ -0,0 +1,22 @@
<template>
<div>
<v-alert
:value="true"
color="error"
icon="warning"
outline
>
Страница, которую вы запросили, не существует.
</v-alert>
</div>
</template>
<script>
export default {
name: 'notFound',
components: {
}
}
</script>