@mrFlyer

Как в Nuxt3 получить данные от API при рендеринге на сервере?

Пробую получить данные с апи при рендеринге на сервере. Делаю по документации вроде, но данные подгружает только на стороне клиента. Что я делаю не так?

<template>
    <pre>{{ state._pageContent }}</pre>
</template>

<script>
import {reactive} from "vue";

export default {
  name: "index",
  async setup(){

    const state = reactive({
      _pageContent:false,
    });

    const { data, pending, error, refresh } = await useFetch('/index-page', {
      onRequest({ request, options }) {
        const RTConfig = useRuntimeConfig().public;
        options.headers = {
          'api-id': RTConfig.apiID,
          'api-key': RTConfig.apiKEY,
        }
        options.baseURL = RTConfig.apiUrl + '/v1';
      },
      onResponse({ request, response, options }) {
        state._pageContent = response._data._pageContent;
      },
    });

    return {
      state,
    }
  },
}
</script>

<style scoped></style>

Я уже и так и так пробую ... все равно на стороне клиента запрос уходит...

$fetch(`/index-page`)
        .then(response=>{
          state._pageContent = response._pageContent;
        });

await useAsyncData('_pageContent',
        () => $fetch( `/index-page`)
            .then((response)=>{
              state._pageContent = response._pageContent;
            })
    );
  • Вопрос задан
  • 755 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы