Skip to content

Commit fba9a2a

Browse files
committed
check ssr option when doing final response render
1 parent 87a18b7 commit fba9a2a

File tree

5 files changed

+20
-1
lines changed

5 files changed

+20
-1
lines changed

.changeset/great-dryers-grin.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@sveltejs/kit': patch
3+
---
4+
5+
fix: correctly prerender pages that use browser globals and have SSR turned off

packages/kit/src/runtime/server/page/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ export async function render_page(event, page, options, manifest, state, resolve
291291
resolve_opts,
292292
page_config: {
293293
csr: get_option(nodes, 'csr') ?? true,
294-
ssr: true
294+
ssr: get_option(nodes, 'ssr') ?? true
295295
},
296296
status,
297297
error: null,
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
export const prerender = true;
2+
export const ssr = false;
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
<h1>Hello world!</h1>
2+
<p>{window.location.origin}</p>

packages/kit/test/apps/basics/test/test.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -622,6 +622,16 @@ test.describe('Page options', () => {
622622
await page.goto('/transform-page-chunk');
623623
expect(await page.getAttribute('meta[name="transform-page"]', 'content')).toBe('Worked!');
624624
});
625+
626+
test('prerenders page that uses browser globals with ssr=false', async ({
627+
page,
628+
javaScriptEnabled
629+
}) => {
630+
test.skip(process.env.DEV, 'skip when in dev mode');
631+
test.skip(!javaScriptEnabled, 'skip when JavaScript is disabled');
632+
await page.goto('/prerendering/no-ssr');
633+
await expect(page.getByText('Hello world!')).toBeVisible();
634+
});
625635
});
626636

627637
test.describe('$app/environment', () => {

0 commit comments

Comments
 (0)