Dynami c контент с Nuxt - PullRequest
       29

Dynami c контент с Nuxt

1 голос
/ 18 января 2020

Можно ли сделать что-то подобное в nuxt?

Идея состоит в том, что когда вы go идете по любому маршруту, страница _. vue загрузится

в соответствии с документацией https://nuxtjs.org/guide/routing/#unknown -dynami c -nested-маршруты

/pages/_.vue

<template>
    <div>
        <component v-bind:is="sectionType" :content="content"></component>
    </div>
</template>

<script>
import News from '@/pages/__predefined/News';
import Events from '@/pages/__predefined/Events';
import api from '@/api';

export default {
    async asyncData({ $axios })
        res = await $axios.$get(`https://api.com/${route.path}`);

        return {
            sectionType: res.type,
            content: res.content || {}
        }
    },
    components: {
        'news': News,
        'event': Events
    },
}
</script>

Затем выполните запрос API с текущим путем в asyncData / news / some-article или / events / some-event

Response:
{
  type: 'news', // or events
  content: {}
}

Затем, узнав тип, я хотел бы показать соответствующий макет.

Кроме того, можно ли вызвать asyncData в этом конкретном макете, который будет отображаться?

Или единственный способ передать контент через реквизиты?

...