【问题标题】:Nuxt.js & contentful website not generating dynamic routes properlyNuxt.js 和内容丰富的网站无法正确生成动态路由
【发布时间】:2019-05-01 07:23:32
【问题描述】:

我刚刚建立了一个 nuxt.js 和内容丰富的网站。当人们访问网站时,需要生成几条路线,但除非我刷新,否则它似乎不会生成所有路线或无法识别某些页面。示例 - 我将博客文章上传到内容,但它没有出现在博客文章列表中,但是当我更改显示没有问题的博客的文本时,我在下面附加了我的配置生成

generate: {
routes () {
  return Promise.all([
    client.getEntries({
      'content_type': 'product'
    }),
    client.getEntries({
      'content_type': 'kebaProduct'
    }),
    client.getEntries({
      'content_type': 'blogPost'
    }),
  ])
    .then(([productEntries, kebaEntries, blogEntries]) => {
      return [
        ...blogEntries.items.map(entry => `/blog/${entry.fields.slug}`),
        ...productEntries.items.map(entry => `/products/${entry.fields.slug}`),
        ...kebaEntries.items.map(entry => `/products/ev-charging/${entry.fields.slug}`),
      ]
    })
}

当我在本地主机上并且所有产品路由都在生成和更新正常时,它工作正常,当我运行npm run generate 时,只创建了一些“kebaProduct”路由。不知道我错过了什么

请注意,虽然我有 5 个 'kebaProducts on contentful' 生成,但它只生成一个 .html 文件,不确定预期的行为是什么。

【问题讨论】:

    标签: vue.js routing contentful nuxt.js


    【解决方案1】:

    想通了。如果已指定某些内容并且它不存在于内容代码中,则该页面将无法生成,因为它会引发错误。您可以使用 v-if 检查内容并有条件地以这种方式呈现它,或者确保在内容验证中所有字段都是“必需的”

    【讨论】:

      猜你喜欢
      • 2020-11-14
      • 2021-03-12
      • 1970-01-01
      • 2020-07-02
      • 2023-03-10
      • 2021-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多