42 lines
3.0 KiB
Markdown
42 lines
3.0 KiB
Markdown
## Why
|
|
|
|
Текущие крупные индикаторы загрузки прерывают визуальный контекст и не дают
|
|
пользователю понять, какая часть интерфейса появится после завершения ожидания.
|
|
Для основных переходов и первичной загрузки нужен единый подход, который
|
|
сохраняет структуру экрана и делает ожидание менее резким.
|
|
|
|
## What Changes
|
|
|
|
- При первичной и частичной загрузке содержимого пользователь видит
|
|
placeholders, повторяющие ожидаемую структуру соответствующего экрана или
|
|
блока, вместо отдельного крупного индикатора процесса.
|
|
- Такой же принцип применяется во время загрузки отложенно открываемых
|
|
маршрутов и начального восстановления пользовательской сессии.
|
|
- Компактные индикаторы сохраняются для выполняющихся пользовательских
|
|
действий и фонового обновления уже показанных данных: в этих случаях
|
|
существующее содержимое или элемент управления остаются основным контекстом.
|
|
- Не меняются результаты загрузки, обработка ошибок и пустых состояний,
|
|
навигационные правила, операции с данными или доменное поведение.
|
|
|
|
## Capabilities
|
|
|
|
### New Capabilities
|
|
|
|
- `frontend-loading-presentation`: Единое наблюдаемое представление первичной и
|
|
частичной загрузки содержимого, загрузки маршрутов и восстановления сессии с
|
|
сохранением компактной индикации для действий и фонового обновления.
|
|
|
|
### Modified Capabilities
|
|
|
|
<!-- Existing capability requirements do not prescribe the loading presentation
|
|
being replaced; their data, cache, navigation and error semantics remain
|
|
unchanged. -->
|
|
|
|
## Impact
|
|
|
|
Изменение затрагивает пользователей frontend во время открытия экранов,
|
|
ожидания отдельных блоков и запуска приложения. Оно охватывает клиентское
|
|
представление loading-состояний, каноническое описание нового поведения и
|
|
пользовательскую as-built документацию; backend, API и доменная модель не
|
|
изменяются.
|