Skip to content

Commit fe962b1

Browse files
nkzawarauchg
authored andcommitted
make sure to flush styles and head (#459)
1 parent 4faa281 commit fe962b1

File tree

2 files changed

+21
-8
lines changed

2 files changed

+21
-8
lines changed

server/document.js

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,18 @@ import flush from 'styled-jsx/server'
66
export default class Document extends Component {
77
static getInitialProps ({ renderPage }) {
88
let head
9-
const { html, css, ids } = renderStatic(() => {
10-
const page = renderPage()
11-
head = page.head
12-
return page.html
13-
})
14-
const styles = flush()
9+
let rendered
10+
let styles
11+
try {
12+
rendered = renderStatic(() => {
13+
const page = renderPage()
14+
head = page.head
15+
return page.html
16+
})
17+
} finally {
18+
styles = flush()
19+
}
20+
const { html, css, ids } = rendered
1521
const nextCSS = { css, ids, styles }
1622
return { html, head, nextCSS }
1723
}

server/render.js

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,15 @@ async function doRender (req, res, pathname, query, {
6262
router: new Router(pathname, query)
6363
})
6464

65-
const html = (staticMarkup ? renderToStaticMarkup : renderToString)(app)
66-
const head = Head.rewind() || defaultHead()
65+
const render = staticMarkup ? renderToStaticMarkup : renderToString
66+
67+
let html
68+
let head
69+
try {
70+
html = render(app)
71+
} finally {
72+
head = Head.rewind() || defaultHead()
73+
}
6774
return { html, head }
6875
}
6976

0 commit comments

Comments
 (0)