Как во использовать метод layout'a?

Вот структура моего проекта на VUE

-- src/layouts
  -- unauthorized
    -- Unauthorized.vue

-- src/components
  -- unauthorized
    -- Preview.vue

-- src/views
  -- unauthorized
    -- IndexView.vue

router.js:

{
    path: '/',
    name: 'home',
    component: () => import('@/views/unauthorized/IndexView.vue'),
    meta: {
        layout: "unauthorized"
    }
}

App.vue:

<template>
    <component :is="layout">
        <router-view/>
    </component>
</template>

<script>
    import Unauthorized from '@/layouts/unauthorized/Unauthorized.vue';

    export default {
        computed: {
            layout(){
                return this.$route.meta.layout || "default-layout"
            }
        },

        components: {
            Unauthorized
        }
    }
</script>

В файле src/layouts/unauthorized/Unauthorized.vue есть метод modal()

Код файла src/layouts/unauthorized/Unauthorized.vue:

<template>
    <div>
        ...
    </div>

    <slot></slot>
</template>

<script>
export default {
    methods: {
        modal() {
           ...
        }
    }
}
</script>

Мне нужно в файле src/components/unauthorized/Preview.vue использовать метод modal() который находиться в файле src/layouts/unauthorized/Unauthorized.vue

Как это сделать? Буду благодарен за помощь!


Ответы (0 шт):