0

最近搬到了一个反应网站上的 react-snap (所以如果有人分享我作品的链接,我可以过那个元标记预览生活)。

我遇到的一个奇怪问题是我的未链接页面,尤其是我的 404 页面正在从我的主页加载一些内容,并且没有更新为页面的正确 id 标签、英雄图像或正确的 CSS 样式。

我有一个链接页面(类似于您在社交上看到的链接树页面),该页面之前已损坏,当我将该页面添加到站点导航时,它现在可以正确呈现。

关于如何正确加载 404 页面的任何想法?我是否需要抓取的 sudo 404 页面,如果有人从损坏的链接加载实际的 404 页面,它会正确呈现吗?

该组件位于我的 Switch 组的底部,为:Route component={Page404}

正确的页面渲染:https ://dangerhuskie.com/works/varsity-pumpkinhead

查看损坏的 404:https ://dangerhuskie.com/farts

如果您从 404 转到另一个页面,然后浏览器返回按钮返回它,它会正确呈现。

4

1 回答 1

1

遇到类似的问题,在这里找不到答案,认为它与 react-snap 有关。这实际上是我如何使用 React.hydrate 的问题。万一其他人对此有疑问,这篇文章很好读,并提供了一个很好的解决方案https://www.joshwcomeau.com/react/the-perils-of-rehydration/

长话短说,补充

const [hasMounted, setHasMounted] = React.useState(false);
  React.useEffect(() => {
    setHasMounted(true);
  }, []);
  if (!hasMounted) {
    return null;
  }

在您的组件中应该有帮助。

于 2022-02-23T17:05:31.160 回答