Skip to content

Commit ca62d60

Browse files
committed
fix(ssr): don't include qwikloader twice
1 parent b055c8f commit ca62d60

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

packages/qwik/src/server/render.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,7 @@ export async function renderToStream(
105105
if (containerTagName === 'html') {
106106
stream.write(DOCTYPE);
107107
} else {
108+
// The container is not `<html>` so we don't include the qwikloader by default
108109
stream.write('<!--cq-->');
109110
if (opts.qwikLoader) {
110111
if (opts.qwikLoader.include === undefined) {
@@ -138,7 +139,9 @@ export async function renderToStream(
138139

139140
const includeMode = opts.qwikLoader?.include ?? 'auto';
140141
const positionMode = opts.qwikLoader?.position ?? 'bottom';
142+
let didAddQwikLoader = false;
141143
if (positionMode === 'top' && includeMode !== 'never') {
144+
didAddQwikLoader = true;
142145
const qwikLoaderScript = getQwikLoaderScript({
143146
debug: opts.debug,
144147
});
@@ -148,10 +151,10 @@ export async function renderToStream(
148151
dangerouslySetInnerHTML: qwikLoaderScript,
149152
})
150153
);
151-
// Assume there will be at least click handlers
154+
// Assume there will be at least click and input handlers
152155
beforeContent.push(
153156
jsx('script', {
154-
dangerouslySetInnerHTML: `window.qwikevents.push('click')`,
157+
dangerouslySetInnerHTML: `window.qwikevents.push('click','input')`,
155158
})
156159
);
157160
}
@@ -211,7 +214,7 @@ export async function renderToStream(
211214
);
212215
}
213216

214-
const needLoader = !snapshotResult || snapshotResult.mode !== 'static';
217+
const needLoader = !didAddQwikLoader && (!snapshotResult || snapshotResult.mode !== 'static');
215218
const includeLoader = includeMode === 'always' || (includeMode === 'auto' && needLoader);
216219
if (includeLoader) {
217220
const qwikLoaderScript = getQwikLoaderScript({

0 commit comments

Comments
 (0)