• 产品简介
  • 快速开始
    • 导入 Git 仓库
    • 从模板开始
    • 直接上传
    • 从 AI 开始
  • 框架指南
    • 前端
    • 后端
    • 全栈
      • Next.js
      • Nuxt
      • Astro
      • React Router
      • SvelteKit
    • 自定义 404 页面
  • 项目指南
    • 项目管理
    • edgeone.json
    • 缓存配置
    • 错误码
  • 构建指南
  • 部署指南
    • 概览
    • 触发部署
    • 管理部署
    • 部署按钮
    • 使用 Github Action
    • 使用 CNB 插件
    • 使用 IDE 插件
    • 使用 CodeBuddy IDE
  • 域名管理
    • 概览
    • 自定义域名
    • 配置 HTTPS 证书
      • 概览
      • 申请免费证书
      • 使用 SSL 托管证书
    • 如何配置 DNS 的 CNAME 记录
  • Pages Functions
    • 概览
    • Edge Functions
    • Node Functions
  • 日志分析
  • KV 存储
  • 边缘 AI
  • API Token
  • EdgeOne CLI
  • Pages MCP
  • 集成指南
    • AI
      • 对话型大模型集成
      • 图片大模型集成
    • 数据库
      • Supabase 集成
      • Pages KV 集成
    • 电商
      • Shopify 集成
      • WooCommerce 集成
    • 支付
      • Stripe 集成
      • Paddle 集成
    • CMS
      • WordPress 集成
      • Contentful 集成
      • Sanity 集成
    • 身份验证
      • Supabase 集成
      • Clerk 集成
  • 最佳实践
    • 使用通用大模型快速搭建 AI 应用
    • 使用边缘 AI 模型快速搭建对话型 AI 站点
    • 使用 Shopify 搭建电商平台
    • 使用 Supabase 和 Stripe 搭建 SaaS 站点
    • 如何快速搭建公司品牌站点
    • 如何快速搭建博客站点
  • 迁移指南
    • 从 Vercel 迁移至 EdgeOne Pages
    • 从 Cloudflare Pages 迁移至 EdgeOne Pages
    • 从 Netlify 迁移至 EdgeOne Pages
  • 排障指南
  • 常见问题
  • 联系我们
  • 产品动态

SvelteKit

SvelteKit 是 Svelte 官方推出的 Web 应用框架,提供基于文件系统的路由、服务器端渲染(SSR)、静态站点生成(SSG)等开箱即用的能力,帮助开发者构建高性能的现代 Web 应用。
注意:
目前 Pages 对 SvelteKit 版本的支持为 2.4+,最低版本为 2.4.0。


核心特点

SvelteKit 提供高性能的渲染能力、简化的开发流程和灵活的应用架构,适用于构建博客、营销落地页、文档网站等对性能要求较高的中小型 Web 应用。

无缝集成 Svelte:利用 Svelte 的编译优势,在构建阶段生成高效的原生 JavaScript,无需虚拟 DOM,提供极高的运行时性能与简洁的开发体验。
灵活的渲染模式:支持服务端渲染(SSR)、预渲染(Prerender)和客户端渲染(CSR),并可按页面选择合适的渲染策略。
基于文件系统的路由:通过约定式目录结构自动生成路由,支持动态路由与嵌套布局,无需手动维护额外的路由配置。
统一的数据加载机制:使用统一的 load 函数进行数据加载,支持服务器端与客户端环境。
内置增强能力:提供表单增强、流式渲染、错误处理和应用钩子等能力,可根据需要逐步扩展应用。


快速开始

在 EdgeOne Pages 上快速部署 SvelteKit 的项目,可以通过以下方式:
通过 Git 仓库导入 SvelteKit 项目
从 Pages 模板库选择 SvelteKit 模板进行部署

了解 SvelteKit 在 Pages 的部署表现,可以点击下方的示例模板:



Pages 对 SvelteKit 的支持

下表是 Pages 目前支持 SvelteKit 的关键特性。平台也会尽早支持更多特性,但实验性功能可能尚未完全稳定。
SvelteKit 特性
支持情况
Server-Side Rendering (SSR)
Static Site Generation (SSG)
Prerender
Filesystem-based Router
Streaming With Promises
Form Actions
Hooks
Observability
暂不支持


在 Pages 部署 SvelteKit 项目

SvelteKit 通过适配器系统支持部署到不同平台。适配器是将构建产物转换为目标平台所需格式的插件。Pages 提供了官方适配器 @edgeone/sveltekit,用于生成 Pages 部署产物。配合 Pages 的脚手架工具,可快速将 SvelteKit 项目部署到 Pages 平台。

要在 Pages 部署 SvelteKit 项目,可以参考以下操作步骤。


1. 安装适配器

使用 npm 安装适配器。
npm install @edgeone/sveltekit


2. 配置 svelte.config.js

修改配置文件 svelte.config.js,引入并使用适配器@edgeone/sveltekit
import adapter from '@edgeone/sveltekit';
import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';

/** @type {import('@sveltejs/kit').Config} */
const config = {
preprocess: vitePreprocess(),
kit: {
// use edgeone adapter
adapter: adapter()
}
};

export default config;


3. 部署项目

Git 连接部署
集成好适配器后,您可以将项目提交到 GitHub,GitLab 等平台,然后使用我们的 Git 连接部署

CLI 部署
也可以安装 Pages 的脚手架工具,详细安装和使用方法请参考 EdgeOne CLI。配置完成后,使用 edgeone pages deploy 命令部署项目。在部署过程中,CLI 会先自动构建项目,然后将构建产物上传并发布。
注意:
EdgeOne CLI 版本要求 ≥ 1.2.0,部署前请先检查版本,避免部署失败。


服务端渲染(SSR)

默认情况下,SvelteKit 采用服务端渲染(SSR),在服务端生成 HTML 并发送到客户端。

通过在以下文件中配置渲染参数,可修改默认行为:
+page.js / +page.server.js - 页面级配置
+layout.js / +layout.server.js - 布局级配置

例如,设置 ssr = false 可切换为客户端渲染(CSR),服务端将返回空白页面框架,由客户端 JavaScript 完成渲染。
// +page.js
export const ssr = false;


预渲染(Prerender)

SvelteKit 支持为指定页面启用预渲染,在构建时生成静态 HTML 文件,其他页面保持动态渲染。若整个应用都适合预渲染,可使用 @sveltejs/adapter-static 适配器将全站构建为静态网站部署到 Pages。
// +page.js/+page.server.js
export const prerender = true;


流式渲染

SvelteKit 支持流式渲染,允许服务端先发送页面框架,再逐步传输异步数据,提升首屏加载速度和用户体验。

load 函数中加载数据时,返回 Promise 对象即可启用流式渲染:
// +page.server.js
export const load = async () => {
return {
post: fetch('/api/post').then(r => r.json()),
comments: fetch('/api/comments').then(r => r.json())
};
};
在页面中使用 {#await} 处理流式数据:
// +page.svelte
<script>
let { data } = $props();
</script>

{#await data.post}
<p>Loading...</p>
{:then post}
<h1>{post.title}</h1>
{/await}