Gatsby build / createPages:错误处理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gatsby build / createPages:错误处理相关的知识,希望对你有一定的参考价值。
我正在使用gatsby构建一个非常大的网站(5k +页,300k +图像)。源数据不可靠(例如,通常缺少字段),这会导致在createPage
处理期间出错。
问题是,如果单个createPage
运行引发错误,则entire build将失败。因此有时成功构建5k页,然后整个过程由于一个错误而崩溃。
我尝试将页面创建内容包装在try...catch
中,但没有区别:
try
createPage(
path: node.slug,
component: path.resolve(`./src/templates/BlogPost.js`),
context:
id: node.id,
,
);
catch (error)
console.log(error);
((我还尝试在组件级别检查数据,如果数据不完整,则返回null
,但是createPage
仍会创建一个(空白)页面,我不希望这样:我只想要该页面如果数据不好则跳过]])
所以我的问题是:在构建过程中如何处理错误/页面创建失败,从而只跳过失败的页面而不是使整个构建崩溃?
注意,这几乎是this question的副本,但是那里的解决方案对我而言不起作用:如果数据不正确,我将无法呈现错误页面,如果在此位置,我需要完全跳过该页面所有可能
我正在使用gatsby构建一个非常大的网站(5k +页,300k +图像)。源数据不可靠(例如,通常缺少字段),这会在createPage过程中导致错误。问题是...
您应该为源数据显式定义GraphQL模式:https://www.gatsbyjs.org/docs/schema-customization/#creating-type-definitions
以上是关于Gatsby build / createPages:错误处理的主要内容,如果未能解决你的问题,请参考以下文章
javascript Gatsby / Contentful - createPages