Skip to content

Add community details page

Anna Golosova requested to merge hw-4 into main

Что сделано

Реализована страница просмотра сообщества.

Страница сообщества

  • Добавлено отображение:
    • баннера;
    • аватара;
    • названия сообщества;
    • подписчиков;
    • тем;
    • описания;
    • постов сообщества.
  • Добавлена загрузка выбранного сообщества через NgRx.
  • Добавлена загрузка списка подписчиков сообщества.
  • Создание поста доступно только владельцу сообщества.

Router

  • Для получения id сообщества используется input компонента.
  • Параметр маршрута передаётся в компонент через withComponentInputBinding.

Посты

  • PostFeedComponent сделан переиспользуемым:
    • принимает список постов через input;
    • не работает напрямую со Store;
    • передаёт создание поста, комментария и удаление поста через outputs.
  • Существующая лента постов переиспользуется на странице профиля и странице сообщества.

Создание постов и комментариев

  • На странице сообщества обработаны события PostFeedComponent.
  • При создании поста передаётся communityId.
  • После успешного создания новый пост добавляется в текущую ленту сообщества.
  • После создания комментария обновляются комментарии соответствующего поста.
  • После удаления пост удаляется из ленты сообщества.
  • Для операций используются существующие NgRx actions/effects постов.

Аватары

  • При создании поста в сообществе отображается аватар сообщества.
  • При создании комментария отображается аватар текущего пользователя.

Merge request reports

Loading