From 0a099945edd419a6d617c17930f6cc78aec37676 Mon Sep 17 00:00:00 2001 From: Daniel-I-Am Date: Thu, 2 Sep 2021 13:19:34 +0200 Subject: [PATCH] Add admin template --- resources/js/app-admin.js | 16 ++++++++++++++++ resources/js/router-app-admin.js | 18 ++++++++++++++++++ resources/js/views/AdminHome.vue | 3 +++ resources/views/admin.blade.php | 5 +++++ routes/web.php | 4 ++++ webpack.mix.js | 1 + 6 files changed, 47 insertions(+) create mode 100644 resources/js/app-admin.js create mode 100644 resources/js/router-app-admin.js create mode 100644 resources/js/views/AdminHome.vue create mode 100644 resources/views/admin.blade.php diff --git a/resources/js/app-admin.js b/resources/js/app-admin.js new file mode 100644 index 0000000..b7cd606 --- /dev/null +++ b/resources/js/app-admin.js @@ -0,0 +1,16 @@ +require('./bootstrap'); + +// Import Vue.js +window.Vue = require('vue'); +import router from './router-app-admin'; + +import App from './apps/App.vue' + +// Create the Vue.js application +const app = Vue.createApp(App); + +// Register plugins +app.use(router); + +// Mount and start using Vue.js +app.mount('#app'); diff --git a/resources/js/router-app-admin.js b/resources/js/router-app-admin.js new file mode 100644 index 0000000..2737125 --- /dev/null +++ b/resources/js/router-app-admin.js @@ -0,0 +1,18 @@ +const VueRouter = require('vue-router'); + +import Home from './views/AdminHome.vue'; + +import NotFound from './views/NotFound.vue'; + +const routes = [ + { path: '/admin/', name: 'index', component: Home }, + { path: '/:pathMatch(.*)*', name: 'NotFound', component: NotFound }, +]; + +const router = VueRouter.createRouter({ + history: VueRouter.createWebHistory(), + base: '/admin/', + routes, +}); + +export default router diff --git a/resources/js/views/AdminHome.vue b/resources/js/views/AdminHome.vue new file mode 100644 index 0000000..13fd089 --- /dev/null +++ b/resources/js/views/AdminHome.vue @@ -0,0 +1,3 @@ + diff --git a/resources/views/admin.blade.php b/resources/views/admin.blade.php new file mode 100644 index 0000000..0e03e76 --- /dev/null +++ b/resources/views/admin.blade.php @@ -0,0 +1,5 @@ +@extends('template.base') + +@push('js') + +@endpush diff --git a/routes/web.php b/routes/web.php index e669204..c7b0e00 100644 --- a/routes/web.php +++ b/routes/web.php @@ -13,6 +13,10 @@ use Illuminate\Support\Facades\Route; | */ +Route::get('/admin{any}', function() { + return view('admin'); +})->where('any', '$|/.*'); + Route::get('/{any}', function() { return view('home'); })->where('any', '.*'); diff --git a/webpack.mix.js b/webpack.mix.js index e21ebbf..f79b1cd 100644 --- a/webpack.mix.js +++ b/webpack.mix.js @@ -12,6 +12,7 @@ const mix = require('laravel-mix'); */ mix.js('resources/js/app.js', 'public/js') + .js('resources/js/app-admin.js', 'public/js') .vue() .sass('resources/scss/app.scss', 'public/css') .disableSuccessNotifications();