我这里有两个项目:
npm create vite app-with-svelte -- -t svelte-ts
npm create svelte app-with-sveltekit
创建(骨架项目)
svelte.config.js
:
import adapter from "@sveltejs/adapter-static";
import { vitePreprocess } from "@sveltejs/vite-plugin-svelte";
const config = {
preprocess: vitePreprocess(),
kit: {
adapter: adapter({
pages: "build",
assets: "build",
fallback: undefined,
precompress: false,
strict: true,
}),
},
};
export default config;
src/routes/+layout.ts
:
export const prerender = true;
是什么让我问这个问题:
我使用 SvelteKit 静态适配器和 Neutralino 创建了一个项目。从中间开始,我陷入了与 SvelteKit 的兼容性(Neutralino 问题),迫使我使用 Svelte。所以我搜索了将 SvelteKit 迁移到 Svelte,发现了一条 reddit tweet:
无需迁移套件。查找@sveltejs/adapter-static。应该能解决你的问题
npm run build
之后,Svelte和SvelteKit静态适配器是否相同?如果是这样我应该使用哪一个?Neutralino 在这里完全无关,只是为了理解上下文而添加的。
它们不一样。 最需要注意的是,Sveltekit 可以路由页面,而 Vite + Svelte 项目没有路由功能,因为 Svelte 没有内置路由器。