首页 > 解决方案 > Contentful API 结合 nuxt 和 vite 引发运行时错误

问题描述

我正在尝试调整Contentful with Nuxt 教程以使用Nuxt Composition API,它有望很快成为 Nuxt 3 的一部分,并且还使用nuxt-vite。我的 index.vue 的脚本部分如下所示:

<script lang="ts">
import { defineComponent, useAsync, useContext } from '@nuxtjs/composition-api';
import useContentful from '~/plugins/contentful';
import { IBlogPost, IPerson } from '~/types/generated/contentful';

const CTF_PERSON_ID = '15jwOBqpxqSAOy2eOO4S0m';
const CTF_BLOG_POST_TYPE_ID = 'blogPost';

export default defineComponent({
  setup() {
    const { env } = useContext();
    const { client } = useContentful(env);

    const person = useAsync(() => client.getEntry<IPerson>(CTF_PERSON_ID));
    const posts = useAsync(() => {
      return client.getEntries<IBlogPost>({
        content_type: CTF_BLOG_POST_TYPE_ID,
        order: '-sys.createdAt',
      });
    });
    return {
      person,
      posts,
    };
  },
});
</script>

我重写了代码的示例代码createClient以也遵循组合 API 标准,它似乎可以工作,因为我可以在调试器中看到请求和响应。当响应由内容处理时出现问题:

Uncaught (in promise) TypeError: (0 , _fastCopy.default) is not a function
at wrapEntryCollection (entry.js:118)
at Object.getEntries (create-contentful-api.js:243)
at async Object.getEntry (create-内容丰富的 api.js:200)

我知道我使用了一些实验性功能,但由于错误发生在内容代码中,可能是其他原因导致了问题。

标签: nuxt.jscontentfulvite

解决方案


推荐阅读