123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- import Vue from 'vue'
- import VueRouter from 'vue-router'
- import Home from 'vuejs/components/Pages/Home'
- // const Home = () => import(
- // /* webpackMode: "lazy" */
- // /* webpackPrefetch: true */
- // /* webpackPreload: true */
- // 'vuejs/components/Pages/Home')
- // // import Base from 'vuejs/components/Pages/Base'
- const Base = () => import(
- /* webpackChunkName: "module-base" */
- /* webpackMode: "lazy" */
- /* webpackPrefetch: true */
- /* webpackPreload: true */
- 'vuejs/components/Pages/Base')
- // import Thematique from 'vuejs/components/Pages/Thematique'
- const Thematique = () => import(
- /* webpackChunkName: "module-thematique" */
- /* webpackMode: "lazy" */
- /* webpackPrefetch: true */
- /* webpackPreload: true */
- 'vuejs/components/Pages/Thematique')
- // import Blabla from 'vuejs/components/Pages/Blabla'
- const Blabla = () => import(
- /* webpackChunkName: "module-blabla" */
- /* webpackMode: "lazy" */
- /* webpackPrefetch: true */
- /* webpackPreload: true */
- 'vuejs/components/Pages/Blabla')
- // import Article from 'vuejs/components/Pages/Article'
- const Article = () => import(
- /* webpackChunkName: "module-article" */
- /* webpackMode: "lazy" */
- /* webpackPrefetch: true */
- /* webpackPreload: true */
- 'vuejs/components/Pages/Article')
- // import Showrooms from 'vuejs/components/Pages/Showrooms'
- const Showrooms = () => import(
- /* webpackChunkName: "module-showrooms" */
- /* webpackMode: "lazy" */
- /* webpackPrefetch: true */
- /* webpackPreload: true */
- 'vuejs/components/Pages/Showrooms')
- // import Pricing from 'vuejs/components/Pages/Pricing'
- const Pricing = () => import(
- /* webpackChunkName: "module-pricing" */
- /* webpackMode: "lazy" */
- /* webpackPrefetch: true */
- /* webpackPreload: true */
- 'vuejs/components/Pages/Pricing')
- // import Cart from 'vuejs/components/Pages/Cart'
- Vue.use(VueRouter)
- // https://www.lullabot.com/articles/decoupled-hard-problems-routing
- // We could use aliases to never reload the page on language changement
- // BUT beforeupdate is not triggered when push alias instead of path or name
- // const languages = ['en', 'fr'];
- // console.log('path aliases', (() => languages.map(l => `/${l}/base`))())
- const basePath = drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix
- const routes = [
- {
- name: 'home',
- path: basePath,
- // path: '/',
- // alias: (() => languages.map(l => `/${l}`))(),
- component: Home
- // components: {
- // 'home': Home
- // }
- },
- {
- name: 'base',
- path: `${basePath}base`,
- // path: `/base`,
- // alias: (() => languages.map(l => `/${l}/base`))(),
- component: Base
- // components: {
- // 'base': Base
- // }
- },
- {
- name: 'thematique',
- path: `${basePath}thematique/:alias`,
- component: Thematique
- },
- {
- name: 'blabla',
- path: `${basePath}blabla`,
- component: Blabla
- },
- {
- name: 'article',
- path: `${basePath}blabla/:alias`,
- component: Article
- // meta: { uuid:null }
- },
- {
- name: 'showrooms',
- path: `${basePath}showrooms`,
- component: Showrooms
- // meta: { uuid:null }
- },
- // {
- // path: '*',
- // name: 'notfound',
- // components: {
- // 'notfound': NotFound
- // }
- // },
- {
- name: 'pricing',
- path: `${basePath}pricing`,
- component: Pricing
- }
- // {
- // name:'cart',
- // path: `${basePath}cart`,
- // component: Cart
- // }
- ]
- export default new VueRouter({
- mode: 'history',
- routes: routes
- })
|