aboutsummaryrefslogtreecommitdiff
path: root/src/router
diff options
context:
space:
mode:
authorMark Powers <mark@marks.kitchen>2024-07-14 16:17:59 -0500
committerMark Powers <mark@marks.kitchen>2024-07-14 16:17:59 -0500
commit0e742a485f3fa7d35d26b05980a293b5760e8418 (patch)
tree97510b5e1979f7e02dbcb17ccbc699c4f97e63f2 /src/router
Initial commitHEADmaster
Diffstat (limited to 'src/router')
-rw-r--r--src/router/index.js30
-rw-r--r--src/router/routes.js22
2 files changed, 52 insertions, 0 deletions
diff --git a/src/router/index.js b/src/router/index.js
new file mode 100644
index 0000000..ca3cd61
--- /dev/null
+++ b/src/router/index.js
@@ -0,0 +1,30 @@
+import { route } from 'quasar/wrappers'
+import { createRouter, createMemoryHistory, createWebHistory, createWebHashHistory } from 'vue-router'
+import routes from './routes'
+
+/*
+ * 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.
+ */
+
+export default route(function (/* { store, ssrContext } */) {
+ 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)
+ })
+
+ return Router
+})
diff --git a/src/router/routes.js b/src/router/routes.js
new file mode 100644
index 0000000..b8500ad
--- /dev/null
+++ b/src/router/routes.js
@@ -0,0 +1,22 @@
+
+const routes = [
+ {
+ path: '/',
+ component: () => import('layouts/MainLayout.vue'),
+ children: [
+ { path: '', component: () => import('pages/IndexPage.vue') },
+ { path: '/books', component: () => import('pages/BookPage.vue') },
+ { path: '/forms', component: () => import('pages/FormPage.vue') },
+ { path: '/workouts', component: () => import('pages/WorkoutPage.vue') },
+ ]
+ },
+
+ // Always leave this as last one,
+ // but you can also remove it
+ {
+ path: '/:catchAll(.*)*',
+ component: () => import('pages/ErrorNotFound.vue')
+ }
+]
+
+export default routes