재료 UI 라이브러리는 제대로 각 구성 요소에 대한 올바른 CSS를 렌더링하는 브라우저의 userAgent에 따라 달라집니다.
material-ui는 -web-kit
호환 브라우저에 맞는 CSS를 사용하고 있습니다. 그리고 서버 사이드 렌더링을하고 있기 때문에; 당신은 서버 시간에 클라이언트가 페이지를 요청하고있는 브라우저를 모른다. 따라서 모든 css 접두사를 유지하기 때문에 최소한 하나의 올바른 접두어를 얻을 수 있습니다.
해결책은 간단합니다. userAgent http 요청 헤더를 Material 제공자에게 전달하십시오. Express를 사용하는 경우 여기에 예가 나와 있습니다.
import getMuiTheme from "material-ui/styles/getMuiTheme"
import MuiThemeProvider from "material-ui/styles/MuiThemeProvider"
<MuiThemeProvider muiTheme={getMuiTheme({ userAgent: req.headers["user-agent"] })}>
<StaticRouter location={url} context={{}}>
<ReduxProvider store={store}>
<Router userAgent={userAgent} />
</ReduxProvider>
</StaticRouter>
</MuiThemeProvider>