diff --git a/packages/kit/src/core/build/build_server.js b/packages/kit/src/core/build/build_server.js index aa7224395e85..daa5c2e3020a 100644 --- a/packages/kit/src/core/build/build_server.js +++ b/packages/kit/src/core/build/build_server.js @@ -89,7 +89,8 @@ export class Server { } if (!this.options.hooks) { - const module = await import(${s(hooks)}); + const fallback = options.prerender && options.prerender.fallback; + const module = fallback ? {} : await import(${s(hooks)}); this.options.hooks = { getSession: module.getSession || (() => ({})), handle: module.handle || (({ event, resolve }) => resolve(event)), diff --git a/packages/kit/src/core/build/prerender/prerender.js b/packages/kit/src/core/build/prerender/prerender.js index b8d20d16e37a..7ed74bf03aaa 100644 --- a/packages/kit/src/core/build/prerender/prerender.js +++ b/packages/kit/src/core/build/prerender/prerender.js @@ -69,9 +69,9 @@ export async function prerender({ config, entries, files, log }) { read: (file) => readFileSync(join(config.kit.files.assets, file)) }); - const server = new Server(manifest); + const fallback_server = new Server(manifest); - const rendered = await server.respond(new Request('http://sveltekit-prerender/[fallback]'), { + const rendered = await fallback_server.respond(new Request('http://sveltekit-prerender/[fallback]'), { getClientAddress, prerender: { fallback: true, @@ -88,6 +88,8 @@ export async function prerender({ config, entries, files, log }) { return prerendered; } + const server = new Server(manifest); + const error = normalise_error_handler(log, config.kit.prerender.onError); const q = queue(config.kit.prerender.concurrency);