Nuxt.js本地站点页面仅在登陆时从Strapi加载数据,而不通过

问题描述 投票:0回答:1

我正在用来自Strapi的数据填充我的Nuxt.js网站。

我在default.vue布局中导航,简单如:

  <li v-for="page in pages" :key="page.id">
    <nuxt-link :to="page.slug"></nuxt-link>
  </li>

URL正确呈现并尝试打开正确的页面,但是该页面无法加载,因为它无法从Strapi加载数据,例如:

Cannot read property 'title' of undefined

相反,如果我直接进入页面或只是刷新页面,则所有内容都会正确加载。

因此,例如,登陆到localhost:3000 / about可以正常工作,但导航到该页面则不行。我想我首先缺少如何加载数据的东西。我正在通过Apollo查询default.vue中的所有页面以获取导航

  apollo: {
    pages: {
      query: pagesQuery
    }
  }

而且只有index.vue内的特定页面或_slug.vue动态页面内的单个页面:

  apollo: {
    pages: {
      query: pageQuery,
      variables () {
        return {
          "slug": this.$route.params.slug
        }
      }
    }

希望很清楚,在此先感谢您的帮助!

nuxt.js apollo strapi
1个回答
0
投票

找到this similar question之后,似乎要添加解决方案了

 v-if="pages[0] != null"

在主要元素上,和

  data() {
    return {
      pages: []
    }
  }

这似乎可行,但是不确定是否还有其他(更好的?)处理方式,请随时回复!

谢谢

© www.soinside.com 2019 - 2024. All rights reserved.