From ea17cc18f458010c89c1bf494be08bb782d034af Mon Sep 17 00:00:00 2001 From: Josh Story Date: Mon, 7 Aug 2023 15:22:48 -0700 Subject: [PATCH] [Fizz][Float] emit viewport meta before preloads (#27201) Fixes: #27200 preloads for images that appear before the viewport meta may be loaded twice because the proper device image information is not used with the preload but is with the image itself. The viewport meta should be emitted earlier than all preloads to avoid this. this change moves the queue for the viewport meta to preconnects which already has the right priority for this tag --- packages/react-dom-bindings/src/server/ReactFizzConfigDOM.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/react-dom-bindings/src/server/ReactFizzConfigDOM.js b/packages/react-dom-bindings/src/server/ReactFizzConfigDOM.js index ec7d829428..c9a1e5c5cc 100644 --- a/packages/react-dom-bindings/src/server/ReactFizzConfigDOM.js +++ b/packages/react-dom-bindings/src/server/ReactFizzConfigDOM.js @@ -1920,6 +1920,9 @@ function pushMeta( if (typeof props.charSet === 'string') { return pushSelfClosing(responseState.charsetChunks, props, 'meta'); + } else if (props.name === 'viewport') { + // "viewport" isn't related to preconnect but it has the right priority + return pushSelfClosing(responseState.preconnectChunks, props, 'meta'); } else { return pushSelfClosing(responseState.hoistableChunks, props, 'meta'); }