mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
Update styled components example (#2945)
* Update styled components example Updates the styled-components example to pass HOC to renderPage() and fix SSR. * fix lint errors
This commit is contained in:
parent
5a305265d9
commit
093b091a5c
|
@ -2,20 +2,22 @@ import Document, { Head, Main, NextScript } from 'next/document'
|
||||||
import { ServerStyleSheet } from 'styled-components'
|
import { ServerStyleSheet } from 'styled-components'
|
||||||
|
|
||||||
export default class MyDocument extends Document {
|
export default class MyDocument extends Document {
|
||||||
render () {
|
static getInitialProps ({ renderPage }) {
|
||||||
const sheet = new ServerStyleSheet()
|
const sheet = new ServerStyleSheet()
|
||||||
const main = sheet.collectStyles(<Main />)
|
const page = renderPage(App => props => sheet.collectStyles(<App {...props} />))
|
||||||
const styleTags = sheet.getStyleElement()
|
const styleTags = sheet.getStyleElement()
|
||||||
|
return { ...page, styleTags }
|
||||||
|
}
|
||||||
|
|
||||||
|
render () {
|
||||||
return (
|
return (
|
||||||
<html>
|
<html>
|
||||||
<Head>
|
<Head>
|
||||||
<title>My page</title>
|
<title>My page</title>
|
||||||
{styleTags}
|
{this.props.styleTags}
|
||||||
</Head>
|
</Head>
|
||||||
<body>
|
<body>
|
||||||
<div className='root'>
|
<Main />
|
||||||
{main}
|
|
||||||
</div>
|
|
||||||
<NextScript />
|
<NextScript />
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
Loading…
Reference in a new issue