Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

smart skeletons #767

Merged
merged 30 commits into from
May 9, 2023
Merged

smart skeletons #767

merged 30 commits into from
May 9, 2023

Conversation

tom2drum
Copy link
Collaborator

@tom2drum tom2drum commented Apr 17, 2023

что по факту меняется

  • во все GET запросы передаем стаб для placeholderData, стабы генерим на основании прод данных и максимально переиспользуем
  • в низлежащие компоненты прокидываем проп isLoading=isPlaceholderData; для каждого компонента определяем его состояние isLoading; где-то достаточно просто обернуть весь контент в <Skeleton/>, где-то надо подкостылить border-radius или display: inline-block, а где-то легче просто отдельно нарисовать скелетон
  • контент страницы теперь всегда оборачиваем dynamic import, чтобы все дерево не рендерилось на сервере
  • !!! для элементов списков важно делать такой ключ - key={ item.id + (isLoading ? index : '') } - иначе после загрузки список не перерисуется

🚨before merge:

  • unpin API host from code
  • rollback isNeedProxy function

@tom2drum tom2drum added the skip checks For Pull Requests where the "Checks" workflow should not be run label Apr 17, 2023
@tom2drum tom2drum removed the skip checks For Pull Requests where the "Checks" workflow should not be run label Apr 26, 2023
@tom2drum tom2drum merged commit cc425dd into main May 9, 2023
@tom2drum tom2drum deleted the auto-skeletons branch May 9, 2023 21:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants