each reload nextjs material ui style lost even add _app.js and _document.js of material ui nextjs github repository but still after reload style lost

Viewed 108

we try out many GitHub repositories to solve this issues but still not resolved,so please help me about how we can resolve this issue. Thank you

_app.tsx

  useEffect(() => {
    const jssStyles = document.querySelector('#jss-server-side');
    if (jssStyles) {
      jssStyles.parentElement.removeChild(jssStyles);
    }
  }, []);


and my document file looks like this _document.tsx

import React from 'react';
import { ServerStyleSheets } from '@material-ui/core/styles';
import Document, { Head, Html, Main, NextScript } from 'next/document';
export default class MyDocument extends Document {

  render() {
    return (
      <Html lang="en">
        <Head></Head> 
        <body>
          <Main />
          <NextScript />
        </body>
      </Html>
    );
  }
}

MyDocument.getInitialProps = async (ctx) => {
  const sheets = new ServerStyleSheets();
  const originalRenderPage = ctx.renderPage;
  ctx.renderPage = () => {
    return originalRenderPage({
      enhanceApp: (App) => (props) => sheets.collect(<App {...props} />),
    });
  };
  const initialProps = await Document.getInitialProps(ctx);
  return {
    ...initialProps,
    styles: [
      ...React.Children.toArray(initialProps.styles),
      sheets.getStyleElement(),
    ],
  };
};
0 Answers
Related