Обработка ошибок проверки в действиях
Возвращайте ошибки проверки и повторно заполняйте поля формы с помощью fail() и ActionData
«Обработка ошибок проверки в действиях» — бесплатный урок Sveltejs Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Sveltejs Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Sveltejs Academy содержит 4 уроков всего.
Вспомогательная функция fail
Используйте fail(), чтобы вернуть ошибки проверки с состоянием, отличным от 2xx, не выбрасывая исключение.
import { fail } from "@sveltejs/kit";
if (!email) return fail(400, { email, missing: true });Код состояния
Первый аргумент — это состояние HTTP (обычно 400 для проверки данных).
Данные ошибки
Второй аргумент — это данные, возвращаемые странице. Включите в них введённые пользователем значения, чтобы заполнить форму повторно.
Чтение на странице
Страница получает свойство form с результатом действия.
<script>
export let form;
</script>
{#if form?.missing}<p>Please enter an email.</p>{/if}Повторное заполнение полей
Передайте отправленное значение обратно через fail и предварительно заполните поля, чтобы пользователю не пришлось вводить их снова.
<input name="email" value={form?.email ?? ""} />Ошибки отдельных полей
Используйте отдельный ключ ошибки для каждого поля, чтобы получить более точный интерфейс.
return fail(400, { errors: { email: "Invalid" } });Сочетание с проверкой по схеме
Используйте на сервере библиотеки, такие как Zod или Valibot, для типобезопасного разбора данных.
Не выбрасывайте ошибки при проверке
Выбрасывание ошибки приводит к странице ошибок, а fail оставляет пользователя на странице формы.
Сброс формы после успеха
После успешного выполнения очистите состояние формы, вернув пустые значения или выполнив перенаправление.
Использование с use:enhance
Свойство form обновляется без перезагрузки благодаря enhance.
Доступность
Объявляйте об ошибках с помощью aria-live, чтобы программы чтения с экрана озвучивали их.
Быстрая проверка
Что возвращает fail()?
Повторение
Используйте fail() для ошибок проверки. Страница читает их из свойства form и показывает понятное сообщение.
Изучай HTML с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 41
- Уроки
- 163
Часто задаваемые вопросы
Урок «Обработка ошибок проверки в действиях» бесплатный?
Да — полный текст урока «Обработка ошибок проверки в действиях» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Sveltejs Academy, подпишись на CoddyKit PRO. Курс Sveltejs Academy содержит 4 уроков всего.
Чему я научусь в уроке «Обработка ошибок проверки в действиях»?
Возвращайте ошибки проверки и повторно заполняйте поля формы с помощью fail() и ActionData Ты практикуешь Sveltejs Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Sveltejs Academy?
Предыдущий опыт не требуется. Sveltejs Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Обработка ошибок проверки в действиях»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Sveltejs Academy?
Да. Каждый урок Sveltejs Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- +page.server.js с действиями
- Директива use:enhance
- Постепенное улучшение форм
- Обработка ошибок проверки в действиях