gpt4 book ai didi

reactjs - componentDidMount 无法使用自定义 _document.js 在 NextJS 上工作

转载 作者:行者123 更新时间:2023-12-05 06:21:38 30 4
gpt4 key购买 nike

我正在开发一个网络应用程序的原型(prototype),我选择 NextJS 是因为我想更好地学习它,但我意识到我并没有以“标准”方式使用它。我从这里的 Next + Material-UI 示例开始:https://github.com/mui-org/material-ui/tree/master/examples/nextjs一切都很好。

但现在,我正在尝试使用 sessionStorage 来持久化数据,但我发现如果不能使用 componentDidMount 生命周期事件,就很难完成这项工作在页面级别。 Next 的文档说,带有自定义 _document.js 文件的项目在客户端不会有 componentDidMount 方法。由于 Material-UI,我的项目使用自定义文档文件。它似乎支持 css-in-js 框架的服务器端呈现。

如果我不需要服务器端渲染,有没有办法让 Material-UI 继续工作,但取消自定义 _document.js 文件以便我可以使用 componentDidMount

最佳答案

你应该可以同时使用 sessionStorage和自定义文档。

componentDidMount (以及任何其他生命周期方法) 不适用于 _document.js因为这不是呈现客户端。

sessionStoragewindow 的一部分所以你可以在使用 componentDidMount 的任何其他页面/组件上使用它生命周期。

关于reactjs - componentDidMount 无法使用自定义 _document.js 在 NextJS 上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59690449/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com