Skip to main content
Svelte 基础
介绍
响应式
属性
逻辑
事件
绑定
类和样式
Actions
过渡动画
Svelte 进阶
高级响应性
复用内容
Motion
高级绑定
高级过渡效果
Context API
特殊元素
<script module>
后续步骤
SvelteKit 基础
介绍
路由
加载数据
请求头和 Cookie
共享模块
表单
API 路由
$app/state
错误和重定向
SvelteKit 进阶
钩子函数
页面选项
链接选项
高级路由
高级加载
环境变量
结论

在 SvelteKit 中有两种类型的错误 — 预期的错误和意外的错误。

预期的错误是通过 @sveltejs/kit 中的 error 函数抛出的错误,如 src/routes/expected/+page.server.js 中所示:

src/routes/expected/+page.server
import { error } from '@sveltejs/kit';

export function load() {
	error(420, 'Enhance your calm');
}

任何其他错误 — 比如在 src/routes/unexpected/+page.server.js 中的错误 — 都被视为意外错误:

src/routes/unexpected/+page.server
export function load() {
	throw new Error('Kaboom!');
}

当你抛出一个预期错误时,你是在告诉 SvelteKit “别担心,我知道我在做什么”。相反,意外错误被认为是你的应用程序中的一个 bug。当抛出意外错误时,其错误消息和堆栈跟踪将被记录到控制台。

在后面的章节中,我们将学习如何使用 handleError 钩子添加自定义错误处理。

如果你点击这个应用程序中的链接,你会注意到一个重要的区别:预期的错误消息会显示给用户,而意外的错误消息会被隐藏并替换为通用的”Internal Error”(内部错误)消息和 500 状态码。这是因为错误消息可能包含敏感数据。

在 GitHub 编辑此页面

上一页 下一页
1
2
<h1>home</h1>