0Pricing
Sveltejs Academy · Урок

Когда использовать хранилища вместо локального состояния

Выбирайте между состоянием компонента и хранилищами с учётом необходимости совместного использования и времени жизни

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

Локальное состояние

Используйте let в компоненте, если данные принадлежат только этому компоненту.

Свойства компонента

Используйте export let для входных данных от родительского компонента. Родитель владеет состоянием.

Хранилища

Используйте хранилища, если нескольким не связанным друг с другом компонентам нужно совместно использовать одни и те же данные или реагировать на них.

Примеры для хранилищ

Текущий пользователь, theme, содержимое корзины, уведомления — всё, что должно быть доступно глобально.

Примеры для локального состояния

Поля формы, переключатели, состояние при наведении, таймеры анимации — всё, что ограничено одним компонентом.

API контекста

Для данных, общих внутри дерева компонентов, но не глобальных, используйте setContext/getContext.

Не создавайте хранилища преждевременно

Начните с локального состояния, а при росте требований к совместному использованию перенесите его в хранилище.

Удобство тестирования

Локальное состояние проще всего тестировать. Для хранилищ требуется подмена или обёртка.

Сохранение состояния

Оберните хранилища синхронизацией с localStorage, чтобы сохранять состояние.

Рефакторинг

Переход от локального состояния к хранилищу — небольшой рефакторинг: замените let хранилищем, а x — на $x.

Антипаттерн: всё в хранилищах

Размещение всего состояния в хранилищах создаёт неявную связанность. Пока это не требуется, предпочитайте локальное состояние.

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

Когда хранилище является правильным выбором?

Повторение

По умолчанию используйте локальный let; при росте потребности в совместном использовании переносите состояние в хранилище или контекст.

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

Урок «Когда использовать хранилища вместо локального состояния» бесплатный?

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

Чему я научусь в уроке «Когда использовать хранилища вместо локального состояния»?

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

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

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

Сколько времени занимает урок «Когда использовать хранилища вместо локального состояния»?

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

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

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

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

  1. Реактивные инструкции: блок $:
  2. Реактивные зависимости и порядок выполнения
  3. Когда использовать хранилища вместо локального состояния
  4. Как избежать устаревших замыканий
← Назад к Sveltejs Academy