You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Sveltekit构建报错:设置config.kit.prerender.default无效如何解决?

解决SvelteKit adapter-static构建配置冲突问题

问题根源

你遇到的是SvelteKit版本迭代导致的配置字段变更:旧版(1.0之前)的config.kit.prerender.default字段已被移除,但报错信息未同步更新,才会出现配置后提示无效的情况。

两种可行解决方案

方案1:预渲染所有路由(适配静态站点需求)

在svelte.config.js中,用新版的prerender.entries字段替代旧的default,指定预渲染所有路由:

import adapter from '@sveltejs/adapter-static';

/** @type {import('@sveltejs/kit').Config} */
const config = {
	kit: {
		adapter: adapter(),
		prerender: {
			entries: ['*'] // 表示预渲染所有路由
		}
	}
};

export default config;

如果只需要预渲染部分路由,可将['*']替换为具体路由数组,比如['/', '/about', '/contact']。

方案2:构建单页应用(SPA模式)

如果不需要预渲染,只想做SPA,直接在adapter-static配置中设置fallback字段即可,无需配置prerender相关全局项:

import adapter from '@sveltejs/adapter-static';

/** @type {import('@sveltejs/kit').Config} */
const config = {
	kit: {
		adapter: adapter({
			fallback: 'index.html' // 启用SPA模式,所有路由回退到index.html
		})
	}
};

export default config;

补充:路由级单独配置

如果需要针对特定路由设置预渲染,可在对应路由的+page.js或+page.server.js中导出prerender变量:

// src/routes/your-route/+page.js
export const prerender = true;

内容的提问来源于stack exchange,提问作者mikemaccana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 09:22:33