当使用水合物时,为什么我们需要在服务器和客户端中都匹配className,如何匹配?

时间:2018-10-29 00:37:35

标签: reactjs material-ui

我正在使用React 16和Hydrate。我的server.js使用StaticRouter,我的客户端使用BrowserRouter。我正在使用Material-UI。

我不断收到班级不匹配警告。

为什么会警告? 此警告的意义是什么? 是安全风险还是最佳实践? 如何停止收到此警告?

我知道,我们只需要问一个具体问题,但是如果有人可以指导我进入一些非常好的文档页面,它将回答所有这些问题。 请帮助。...

1 个答案:

答案 0 :(得分:0)

材料UI渲染后为每个组件生成一个不同的类。从字面上看,不可能预测最终类的名称。当您在localhost上时,该类可能是 .newLoanStepper-root-247 ,但是一旦您构建该应用程序,该类的名称就会更改为类似 .jss01026

的名称。

如果要使用库https://material-ui.com/guides/server-rendering/

,则需要遵循MUI指南进行服务器渲染。