Quantcast
Channel: User zarpio - Stack Overflow
Viewing all articles
Browse latest Browse all 39

Answer by zarpio for Define global component in InertiaJS with Vue 3

$
0
0

I was having 2 layouts for backend(admin-panel) and frontend(website), achieved as follows. Using inertia default middleware file.

project/app/Http/Middleware/HandleInertiaRequests.php

class HandleInertiaRequests extends Middleware{    protected $rootView = 'app';    public function rootView(Request $request)    {        if ($request->segment(1) == 'admin') {            return 'admin';        }        return parent::rootView($request);    }    public function version(Request $request)    {        return parent::version($request);    }    public function share(Request $request)    {        return array_merge(parent::share($request), [            //        ]);    }}

project/resources/js/Shared/Frontend/Layouts/Layout.vue

<template><Header /><slot /><Footer /></template><script>    import Header from '../Partials/Header'    import Footer from '../Partials/Footer'    export default {        components: {            Header,            Footer        },        name: "FrontendLayout"    }</script>

project/resources/js/Pages/Frontend/Auth/Login.vue

<template>    ...</template><script>    import Layout from '@/js/Shared/Frontend/Layouts/Layout';    export default {        layout: Layout,        metaInfo: { title: 'Login' },        data() {            return {                form: this.$inertia.form({'email': '','password': '','remember': false                })            }        },        methods: {            submit() {                this.form.post(route('login.store'))            }        }    }</script>

Viewing all articles
Browse latest Browse all 39

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>