From 8a6aeb0657d9d198efc1bffeee9f207a74a9f55b Mon Sep 17 00:00:00 2001 From: Pig Fang Date: Tue, 19 Mar 2019 19:29:44 +0800 Subject: [PATCH] Hoist router --- resources/assets/src/index.js | 2 +- resources/assets/src/route.ts | 95 +++++++++++++++++++++++++++++ resources/assets/src/views/route.ts | 91 --------------------------- resources/assets/tests/vue.d.ts | 5 ++ resources/views/index.blade.php | 2 +- webpack.config.js | 1 - 6 files changed, 102 insertions(+), 94 deletions(-) create mode 100644 resources/assets/src/route.ts delete mode 100644 resources/assets/src/views/route.ts diff --git a/resources/assets/src/index.js b/resources/assets/src/index.js index cf78bb73..454a9e43 100644 --- a/resources/assets/src/index.js +++ b/resources/assets/src/index.js @@ -1,7 +1,7 @@ import Vue from 'vue' import './js' import * as emitter from './js/event' -import routes from './views/route' +import routes from './route' Vue.config.productionTip = false diff --git a/resources/assets/src/route.ts b/resources/assets/src/route.ts new file mode 100644 index 00000000..a69f2bae --- /dev/null +++ b/resources/assets/src/route.ts @@ -0,0 +1,95 @@ +export default [ + { + path: '/', + module: [() => import('./stylus/home.styl')], + }, + { + path: 'user', + component: () => import('./views/user/Dashboard.vue'), + el: '#usage-box', + }, + { + path: 'user/closet', + component: () => import('./views/user/Closet.vue'), + el: '.content', + }, + { + path: 'user/player', + component: () => import('./views/user/Players.vue'), + el: '.content', + }, + { + path: 'user/profile', + component: () => import('./views/user/Profile.vue'), + el: '.content', + }, + { + path: 'admin', + module: [() => import('./views/admin/Dashboard')], + }, + { + path: 'admin/users', + component: () => import('./views/admin/Users.vue'), + el: '.content', + }, + { + path: 'admin/players', + component: () => import('./views/admin/Players.vue'), + el: '.content', + }, + { + path: 'admin/customize', + component: () => import('./views/admin/Customization.vue'), + el: '#change-color', + }, + { + path: 'admin/plugins/manage', + component: () => import('./views/admin/Plugins.vue'), + el: '.content', + }, + { + path: 'admin/plugins/market', + component: () => import('./views/admin/Market.vue'), + el: '.content', + }, + { + path: 'admin/update', + component: () => import('./views/admin/Update.vue'), + el: '#update-button', + }, + { + path: 'auth/login', + component: () => import('./views/auth/Login.vue'), + el: 'form', + }, + { + path: 'auth/register', + component: () => import('./views/auth/Register.vue'), + el: 'form', + }, + { + path: 'auth/forgot', + component: () => import('./views/auth/Forgot.vue'), + el: 'form', + }, + { + path: 'auth/reset/(\\d+)', + component: () => import('./views/auth/Reset.vue'), + el: 'form', + }, + { + path: 'skinlib', + component: () => import('./views/skinlib/List.vue'), + el: '.content-wrapper', + }, + { + path: 'skinlib/show/(\\d+)', + component: () => import('./views/skinlib/Show.vue'), + el: '.content > .row:nth-child(1)', + }, + { + path: 'skinlib/upload', + component: () => import('./views/skinlib/Upload.vue'), + el: '.content', + }, +] diff --git a/resources/assets/src/views/route.ts b/resources/assets/src/views/route.ts deleted file mode 100644 index 2fc06771..00000000 --- a/resources/assets/src/views/route.ts +++ /dev/null @@ -1,91 +0,0 @@ -export default [ - { - path: 'user', - component: () => import('./user/Dashboard.vue'), - el: '#usage-box', - }, - { - path: 'user/closet', - component: () => import('./user/Closet.vue'), - el: '.content', - }, - { - path: 'user/player', - component: () => import('./user/Players.vue'), - el: '.content', - }, - { - path: 'user/profile', - component: () => import('./user/Profile.vue'), - el: '.content', - }, - { - path: 'admin', - module: [() => import('./admin/Dashboard')], - }, - { - path: 'admin/users', - component: () => import('./admin/Users.vue'), - el: '.content', - }, - { - path: 'admin/players', - component: () => import('./admin/Players.vue'), - el: '.content', - }, - { - path: 'admin/customize', - component: () => import('./admin/Customization.vue'), - el: '#change-color', - }, - { - path: 'admin/plugins/manage', - component: () => import('./admin/Plugins.vue'), - el: '.content', - }, - { - path: 'admin/plugins/market', - component: () => import('./admin/Market.vue'), - el: '.content', - }, - { - path: 'admin/update', - component: () => import('./admin/Update.vue'), - el: '#update-button', - }, - { - path: 'auth/login', - component: () => import('./auth/Login.vue'), - el: 'form', - }, - { - path: 'auth/register', - component: () => import('./auth/Register.vue'), - el: 'form', - }, - { - path: 'auth/forgot', - component: () => import('./auth/Forgot.vue'), - el: 'form', - }, - { - path: 'auth/reset/(\\d+)', - component: () => import('./auth/Reset.vue'), - el: 'form', - }, - { - path: 'skinlib', - component: () => import('./skinlib/List.vue'), - el: '.content-wrapper', - }, - { - path: 'skinlib/show/(\\d+)', - component: () => import('./skinlib/Show.vue'), - el: '.content > .row:nth-child(1)', - }, - { - path: 'skinlib/upload', - component: () => import('./skinlib/Upload.vue'), - el: '.content', - }, -] diff --git a/resources/assets/tests/vue.d.ts b/resources/assets/tests/vue.d.ts index 5596f90e..580af69e 100644 --- a/resources/assets/tests/vue.d.ts +++ b/resources/assets/tests/vue.d.ts @@ -1,5 +1,10 @@ +/* eslint-disable import/export */ declare module '*.vue' { import Vue from 'vue' export default Vue } + +declare module '*.styl' { + export default {} +} diff --git a/resources/views/index.blade.php b/resources/views/index.blade.php index 2b9a2038..0103f252 100644 --- a/resources/views/index.blade.php +++ b/resources/views/index.blade.php @@ -10,7 +10,7 @@ @include('common.seo-meta-tags') - @include('common.dependencies.style', ['module' => 'home']) + @include('common.dependencies.style') diff --git a/webpack.config.js b/webpack.config.js index 568f1b8b..653aa76e 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -23,7 +23,6 @@ const config = { 'sweetalert2/dist/sweetalert2.min.css', './resources/assets/src/stylus/common.styl', ], - home: './resources/assets/src/stylus/home.styl', setup: './resources/assets/src/stylus/setup.styl', 'langs/en': './resources/lang/en/front-end.js', 'langs/zh_CN': './resources/lang/zh_CN/front-end.js',