From 906b3e64ef2c931b3c8f5c11e92f32b27e23bee3 Mon Sep 17 00:00:00 2001 From: dannc Date: Sun, 17 Feb 2019 14:32:14 +0700 Subject: [PATCH] add auth middleware, add page not found processing --- src/router.js | 15 +++++++++++++++ src/views/Errors/NotFound.vue | 22 ++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 src/views/Errors/NotFound.vue diff --git a/src/router.js b/src/router.js index db6eebd..9341889 100644 --- a/src/router.js +++ b/src/router.js @@ -1,9 +1,19 @@ import Vue from 'vue'; import Router from 'vue-router'; +import Store from '@/store'; +import NotFound from '@/views/Errors/NotFound'; import Home from '@/views/Home'; Vue.use(Router); +function AuthMiddleware(from, to, next) { + if (Store.getters.isUserAuthentificated) { + next(); + } else { + next('/sign_in'); + } +} + export default new Router({ routes: [ { @@ -25,6 +35,7 @@ export default new Router({ path: '/profile', name: 'profile', component: () => import(/* webpackChunkName: "words" */ '@/views/Profile.vue'), + beforeEnter: AuthMiddleware, }, { path: '/sign_in', @@ -36,6 +47,10 @@ export default new Router({ name: 'signUp', component: () => import(/* webpackChunkName: "sign_up" */ '@/views/SignUp.vue'), }, + { + path: '*', + component: NotFound, + } ], mode: 'history', }); diff --git a/src/views/Errors/NotFound.vue b/src/views/Errors/NotFound.vue new file mode 100644 index 0000000..d26272c --- /dev/null +++ b/src/views/Errors/NotFound.vue @@ -0,0 +1,22 @@ + + + +