-
Notifications
You must be signed in to change notification settings - Fork 0
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
Sprint 3 #6
Conversation
✅ Deploy Preview for legendary-cat-a62c0e ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Здравствуйте. (Нужно развернуть общий комментарий ↓)
Посмотрите на гитхабе все комментарии к коду (нужно прокрутить вниз страницу там)
Работа проделана огромная:
Readme
хорошо оформлен- Проект задеплоен и отлично работает
- Отлично, что нет
EOF
ошибок в гите - Хорошая структура папок и файлов
- Отлично, что указываете понятный текст ошибки под инпутом
- Отлично, что базовый урл вынесен отдельно, чтобы не дублировать его
- Отлично, что ловите возможные ошибки в конце каждого запроса к серверу
- Хороший роутинг
- Хорошая логика сокетов
но есть некоторые недочеты:
- Меню в чате не работает https://disk.yandex.ru/i/e2zepyxSTyvp3Q . Не могу добавить, удалить пользователя из чата или же удалить сам чат. Ничего не происходит при клике на пункты меню чата. Оказалось, что это из-за зависания сайта, так как постоянные запросы и перерисовки чатов происходят каждую секунду. Все-таки работает меню, но очень долго открываются попапы. А через 2-3 минуты совсем все зависает и не реагирует
- Потом вроде открылся попап добавления пользователя, но не могу добавить пользователя в чат. Все время ошибка в консоли вылезает https://disk.yandex.ru/i/LfKzB7JvzDiR6w
- Каждую секунду у Вас подгружаются все чаты. Это тормозит весь сайт. Нужно через сокеты получать новые сообщения, а не путем запроса всех чатов каждую секунду https://disk.yandex.ru/i/2F9BFhgFDETbrg
JSON.parse
может выкинуть исключение, если данные невалидные. Стоит добавить блокtry/catch
для отлова возможной ошибки
Можно лучше
- Попробуйте максимально избавиться от типов
any
в коде. Хотя бы часть из них можно заменить наunknown
, если совсем не получается. Чаще всего помогает использование дженериков. Подробнее тут https://habr.com/ru/companies/tbank/articles/588655/ - В моих чатах есть картинка чата, но она не отображается сейчас у Вас. Нужно правильно подключать картинки. Скрин https://disk.yandex.ru/i/IsQAAMYil1_OoA
- Нужна возможность менять картинку чата
constructor(apiPath: string) { | ||
this.apiUrl = `${HOST}${apiPath}`; | ||
} | ||
|
||
get: HTTP = (url = '', options = {}) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Хорошая типизация с помощью HTTP
@@ -0,0 +1,9 @@ | |||
const HOST = 'https://ya-praktikum.tech/api/v2'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Отлично, что базовый урл вынесен отдельно, чтобы не дублировать его
|
||
this.navigate('ChatPage'); | ||
await AuthController.login(userData); | ||
} catch (error) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Отлично, что ловите возможные ошибки в конце каждого запроса к серверу
src/core/Socket.ts
Outdated
} | ||
|
||
public message(event: MessageEvent) { | ||
const data = JSON.parse(event.data); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
JSON.parse
может выкинуть исключение, если данные невалидные. Стоит добавить блок try/catch
для отлова возможной ошибки
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Поздравляю! Ваша работа принята.
Вы отлично потрудились.
Удачного дальнейшего обучения.
No description provided.