diff --git a/packages/vite/src/client/client.ts b/packages/vite/src/client/client.ts index 0c3163adfb1c06..ed1cab3eb17c2e 100644 --- a/packages/vite/src/client/client.ts +++ b/packages/vite/src/client/client.ts @@ -365,9 +365,11 @@ const sheetsMap = new Map() // collect existing style elements that may have been inserted during SSR // to avoid FOUC or duplicate styles -document.querySelectorAll('style[data-vite-dev-id]').forEach((el) => { - sheetsMap.set(el.getAttribute('data-vite-dev-id')!, el as HTMLStyleElement) -}) +if ('document' in globalThis) { + document.querySelectorAll('style[data-vite-dev-id]').forEach((el) => { + sheetsMap.set(el.getAttribute('data-vite-dev-id')!, el as HTMLStyleElement) + }) +} // all css imports should be inserted at the same position // because after build it will be a single css file