Пісочниця

Змінюйте вхідні дані. Дивіться, як відповідає restate.

Сім експериментів запускають справжній пакет. Контролер ліворуч належить цьому сайту; приклад праворуч отримує лише props, тож його код — саме те, що написали б ви.

Контролер — лише для сайтуprops — містПриклад — код, який ви копіюєте
01

Два екрани, одне сховище

Кільком компонентам потрібне одне значення. Оголосіть його один раз і читайте будь-де.

На що дивитися
  • Натисніть кнопку кроку: усі читачі одночасно покажуть нове число.
  • Змініть кількість читачів: новий читач стартує з поточного значення.

Підготовка прикладу…

Початок
02

Перемальовується лише змінене

Велике сховище не повинно перемальовувати кожен компонент за кожної правки.

На що дивитися
  • Змініть листівку: перемальовується лише картка всього сховища.
  • Додайте товар: перемальовуються товари й підсумок; картка купона не змінюється.
  • Вимкніть shallow: підсумок перемальовується за кожної правки, бо його selector щоразу повертає новий об’єкт.

Підготовка прикладу…

Підписуйтеся лише на потрібне
03

Багато змін, одне сповіщення

Якщо оновлювати два сховища по черзі, підписник може побачити проміжний стан.

На що дивитися
  • Очистити окремо: підписник бачить 0 товарів разом зі старим купоном.
  • Очистити через batch: підписник спрацьовує один раз, після того як змінилися обидва сховища.

Підготовка прикладу…

Підписуйтеся лише на потрібне
04

Зберігайте, коли вирішите

Правка змінює пам’ять. Збереження — явна дія, а статус показує, що відбувається.

На що дивитися
  • Друкуйте: dirty вмикається, але поки нічого не записується.
  • Збільште затримку й збережіть: operation показує save, поки триває запис.
  • Повторіть приклад: збережену чернетку відновлено з IndexedDB.

Підготовка прикладу…

Зберігайте, коли вирішите
05

Друкуйте швидко, пишіть один раз

Збереження на кожне натискання клавіші перевантажує сховище. autoSave чекає паузи.

На що дивитися
  • Наберіть речення: правки ростуть швидко, а записи додаються по одному після кожної паузи.
  • Виберіть «За кожної правки»: кожна правка записується, але повернення до збереженого значення нічого не пише.

Підготовка прикладу…

Зберігайте, коли вирішите
06

Лабораторія збоїв

Зробіть сховище повільним, зламаним або недоступним і подивіться, як restate зберігає ваші дані й повідомляє про проблему.

На що дивитися
  • Збільште затримку й збережіть тричі: запити ділять один запис, тож pending лишається 1, а три результати приходять разом.
  • Увімкніть збій запису й збережіть: dirty лишається true, а error показує причину.
  • Зробіть сховище недоступним: збереження відхиляється з STORAGE_UNAVAILABLE, а правка далі працює.

Підготовка прикладу…

Надійність by design
07

Стан для окремого документа

Кожному відкритому документу потрібен свій стан, який звільняється, коли документ закривається.

На що дивитися
  • Напишіть у документі A, потім у B: кожен зберігає свій текст.
  • Закрийте документ A й відкрийте знову: він починається порожнім, бо його область знищено.

Підготовка прикладу…

Стан, що належить компоненту

Пошук у документації

Пошук у заголовках, описах і тексті всіх посібників.