何时使用 Svelte、SvelteKit 和 Sapper?
如果……请使用 Svelte
如果……请使用 SvelteKit
如果……请使用工兵
场景
2022年7月15日更新:尽管SvelteKit尚未发布1.0版本,但我仍然强烈建议在SvelteKit和Sapper之间犹豫不决的用户选择SvelteKit。Sapper实际上已经停止维护,而SvelteKit 1.0版本即将发布。
还在纠结什么时候该用 Svelte、SvelteKit 还是 Sapper?希望这篇简短的指南能帮你理清思路。开始吧!👇
如果……请使用 Svelte
- 你不需要/不想要SSR(服务器端渲染)
- 你想将一个组件渲染到现有页面中
- 你想输出类似原生组件、WebComponent 或 React 组件适配器之类的东西。
如果……请使用 SvelteKit
- 你乐于接受测试版软件,并享受体验最新技术带来的乐趣。
- 你想要类似 Next.js/Nuxt.js 的 SSR 服务端渲染 (SSR)
- 你的项目需要后端 API。
- 您希望您的应用程序在无服务器环境(例如 Vercel/Netlify)中运行。
- 你想在开发过程中实现超快的热重载(通过 Vite)
请注意,SvelteKit 支持使用adapter-static进行静态渲染,如果您不需要任何 API/SSR,可以使用它来渲染带有内置路由的静态站点。
如果……请使用工兵
更新:目前 Kit 已接近 1.0 版本,因此您有 99% 的可能性会选择使用 Kit 而不是 Sapper。
- 你不想使用测试版软件,也不想处理测试版软件可能带来的各种问题。
- 您需要直接访问 Express/Polka
- 你并不介意继续使用一款即将停止维护的产品(SvelteKit 将取代 Sapper)。
实际上,你几乎永远不应该选择 Sapper,而应该在它缺少某些功能以满足你的需求时向 Svelte 团队提交反馈。
场景
仍然不确定该用什么?或许以下场景能帮助你做出决定:
- “我正在构建一个全新的 Web 应用(包含后端/API)”:使用 SvelteKit
- “我想构建一个单页应用(SPA),我已经有了后端,也不需要服务器端渲染(SSR)”:使用 Svelte
- “我想在现有的 Web 应用中使用 Svelte”:使用 Svelte
- “我对新事物持谨慎态度,但需要SSR/路由功能”:请使用Sapper。
- “我在造火箭🚀”:请用其他说法。
请注意,如果您最终使用 Sapper,您可以随时迁移到 SvelteKit。
您觉得以上列表中还有哪些遗漏的原因?请在下方评论区留言💬
关注我的Dev.to、Twitter和Github账号,获取更多 Web 开发和创业相关内容🤓
文章来源:https://dev.to/danawoodman/when-to-use-svelte-vs-sveltetkit-vs-sapper-4o6a