From 2d9fbf7edfd9157dc71244668246e2ca488797b8 Mon Sep 17 00:00:00 2001 From: Yubin Date: Sun, 15 Aug 2021 03:47:39 +0900 Subject: [PATCH] Hoist the next/head element --- examples/cms-umbraco-heartcore/.gitignore | 0 packages/next/pages/_document.tsx | 4 +-- .../client-navigation/pages/_document.js | 25 +++++++++++++++++++ .../client-navigation/pages/head-priority.js | 14 +++++++++++ .../client-navigation/test/rendering.js | 12 +++++++++ 5 files changed, 53 insertions(+), 2 deletions(-) mode change 100755 => 100644 examples/cms-umbraco-heartcore/.gitignore create mode 100644 test/integration/client-navigation/pages/_document.js create mode 100644 test/integration/client-navigation/pages/head-priority.js diff --git a/examples/cms-umbraco-heartcore/.gitignore b/examples/cms-umbraco-heartcore/.gitignore old mode 100755 new mode 100644 diff --git a/packages/next/pages/_document.tsx b/packages/next/pages/_document.tsx index 8d314577f45843e..53f9a195dd2bf79 100644 --- a/packages/next/pages/_document.tsx +++ b/packages/next/pages/_document.tsx @@ -684,11 +684,11 @@ export class Head extends Component< )} + {!isDeferred && getDynamicHeadContent()} + {children} {optimizeFonts && } - {!isDeferred && getDynamicHeadContent()} - {inAmpMode && ( <> + + {/* This tag is used to test head-priority */} + + + +
+ + + + ) + } +} + +export default MyDocument diff --git a/test/integration/client-navigation/pages/head-priority.js b/test/integration/client-navigation/pages/head-priority.js new file mode 100644 index 000000000000000..040e3b7bd31103b --- /dev/null +++ b/test/integration/client-navigation/pages/head-priority.js @@ -0,0 +1,14 @@ +import Head from 'next/head' + +export default () => { + return ( +
+ + + + + +

next/head should be placed above the document/head.

+
+ ) +} diff --git a/test/integration/client-navigation/test/rendering.js b/test/integration/client-navigation/test/rendering.js index 6e1055e4fde4602..2674e3c9aa56b40 100644 --- a/test/integration/client-navigation/test/rendering.js +++ b/test/integration/client-navigation/test/rendering.js @@ -192,6 +192,18 @@ export default function (render, fetch, ctx) { expect(html).toContain('