Словарь механизмов ожидания внутри живого экрана: механизм под форму ожидания, а не под тип экрана. Полный обвал — отдельный паттерн,
системные заглушки .
Какой механизм когда
Форма контента известна, данных ещё нет → skeleton
Контент уже на экране, меняется срез → keep-previous
Область крошечная или форма неизвестна → спиннер
Меняется экран целиком → полоса сверху
Запрос упал, каркас жив → инлайн-ошибка с повтором
Skeleton — холодный старт
→ Web App
Каркас сразу, тело — плейсхолдеры в форме будущего контента: при подмене на данные нет скачка вёрстки.
skeleton · холодный старт
achilles.local/admin/users
первый показ · данных ещё нет
Каркас и шапка таблицы сразу; тело — плейсхолдеры
Пользователи
Имя Email Роль Статус Последний вход
Keep-previous — переход среза
→ Admin Panel
Прежние строки притушены, под шапкой — тонкая полоса; новый срез подменяет их на месте, без мигания в пустоту.
keep-previous · переход страницы
achilles.local/admin/users?page=2
контент уже был · едет следующий срез
Прежние строки притушены, полоса сверху, подмена на месте
Пользователи
Имя Email Роль Статус Последний вход
Анна Орлова anna@company.com Owner active 5 мин назад
Дмитрий Соколов dmitry@company.com Admin active вчера
Игорь Лебедев igor@company.com Member active 3 дня назад
Спиннер — мелкая зона
Кнопка в процессе, инлайн-проверка, короткое действие в модалке. Целый список так не грузим — там skeleton.
спиннер · кнопка и мелкая зона
Сохранение…
Проверка соединения…
Полоса — смена экрана целиком
Тонкая полоса под шапкой, пока грузится следующий маршрут. Живёт на уровне оболочки (layout), не на контентных экранах.
полоса · переход между экранами
achilles.local/admin/settings
переход на новый маршрут
Полоса под шапкой, пока грузится следующий экран
Инлайн-ошибка — повтор
Блок с причиной и «Повторить» в области данных, каркас экрана жив. Полный обвал —
системная заглушка ; невидимый фоновый сбой — тост .
инлайн-ошибка · повтор
achilles.local/admin/users
запрос упал · каркас экрана жив
Ошибка в области данных, остальной экран на месте
Пользователи
Не удалось загрузить список
Сервер не ответил. Проверьте соединение и повторите.
Повторить
Правила
Порог ~200 мс — индикатор не показываем, если ответ успел прийти быстрее: иначе экран мерцал бы вспышкой лоадера.
Каркас не дёргается — заголовок, фильтры, пагинация рендерятся сразу; меняется только область данных.
Доступность — зона загрузки несёт
aria-busy, инлайн-ошибка — role="alert",
чтобы скринридер сообщал о смене состояния.