0Pricing
Sveltejs Academy · Урок

Обработка ошибок в загрузке

Выбрасывайте error() или redirect() из загрузки, чтобы корректно обрабатывать сбои

«Обработка ошибок в загрузке» — бесплатный урок Sveltejs Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Sveltejs Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Sveltejs Academy содержит 4 уроков всего.

Выбрасывание ошибок

Используйте error() из @sveltejs/kit, чтобы отправить контролируемую ошибку HTTP.

import { error } from "@sveltejs/kit";
if (!post) error(404, "Post not found");

Код состояния

Первый аргумент — это код состояния HTTP (404, 401, 500 и т. д.).

Сообщение об ошибке

Второй аргумент — это понятное человеку сообщение, которое отображается на страницах ошибок.

Перенаправления

Используйте redirect(), чтобы отправить пользователя на другую страницу вместо отображения ошибки.

import { redirect } from "@sveltejs/kit";
if (!session) redirect(302, "/login");

Ожидаемые ошибки

Вызовы error() считаются ожидаемыми ошибками: они отображают указанное вами сообщение.

Непредвиденные ошибки

Неперехваченные исключения становятся непредвиденными ошибками. В целях безопасности их сообщения скрываются от клиентов.

Пользовательские страницы ошибок

Создайте +error.svelte в корне проекта или в отдельном маршруте, чтобы настроить интерфейс ошибок.

Восстанавливаемые ошибки

Перехватывайте ошибки внутри загрузки и возвращайте запасные данные, если постепенное ухудшение работы предпочтительнее страниц ошибок.

Обработка исключений

Заключайте потенциально опасные вызовы в конструкцию обработки исключений, чтобы корректно их обрабатывать.

try { data = await fetch(...) } catch (e) { data = []; }

Состояние загрузки

Используйте потоковую передачу (возвращайте объект с данными, которые будут готовы позже), чтобы показывать состояние частичной загрузки, а не выбрасывать ошибку.

Ведение журнала

Централизованно записывайте ошибки в журнал через handleError в hooks.server.js.

Быстрая проверка

Что делает выброс error(404)?

Повторение

Используйте error() для ожидаемых сбоев, а redirect() — чтобы отправлять пользователей в другое место из загрузки.

Часто задаваемые вопросы

Урок «Обработка ошибок в загрузке» бесплатный?

Да — полный текст урока «Обработка ошибок в загрузке» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Sveltejs Academy, подпишись на CoddyKit PRO. Курс Sveltejs Academy содержит 4 уроков всего.

Чему я научусь в уроке «Обработка ошибок в загрузке»?

Выбрасывайте error() или redirect() из загрузки, чтобы корректно обрабатывать сбои Ты практикуешь Sveltejs Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Sveltejs Academy?

Предыдущий опыт не требуется. Sveltejs Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Обработка ошибок в загрузке»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Sveltejs Academy?

Да. Каждый урок Sveltejs Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Функция загрузки +page.js
  2. Возврат данных и использование $page.data
  3. Обработка ошибок в загрузке
  4. +page.server.js для логики только на сервере
← Назад к Sveltejs Academy