Next js 在加载页面内容时在顶部显示 0 一秒钟

Posted

技术标签:

【中文标题】Next js 在加载页面内容时在顶部显示 0 一秒钟【英文标题】:Next js shows a 0 at the top for one second on load page content 【发布时间】:2022-01-23 13:24:11 【问题描述】:

在我的 nextjs 应用程序中,当页面加载时,左上角有一瞬间的 0。在该页面中,我使用 getStaticProps 从 Sanity CMS 获取一些数据并返回内容。我注意到,即使我返回一个空分数,也会出现 0。

  return <>Object?.keys(finalContent).length && <></></>;

如果我只返回空分数而不检查

Object?.keys(finalContent).length && 

0 不见了

  return <></>;  // no 0 in the page

有人知道怎么去掉吗?

【问题讨论】:

这能回答你的问题吗? React showing 0 instead of nothing with short-circuit (&&) conditional component 【参考方案1】:

我假设您希望使用Object?.keys(finalContent).length 确保获取数据。显然,对象键长度的 '0' 在这里不算作假值,所以它被呈现为一个值,就像你会说一些任意值/数字,如 7 &amp;&amp; &lt;&gt;&lt;/&gt;

试试这个:

  return <>Object?.keys(finalContent).length != 0 && <></></>;

它将确保表达式算作布尔值

【讨论】:

以上是关于Next js 在加载页面内容时在顶部显示 0 一秒钟的主要内容,如果未能解决你的问题,请参考以下文章