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

Sprint 2/step 2 #4

Merged
merged 12 commits into from Jan 29, 2022
Merged

Sprint 2/step 2 #4

merged 12 commits into from Jan 29, 2022

Conversation

svetanti
Copy link
Owner

No description provided.

@irinamozes
Copy link

Проект очень хороший, продуманный.

Чётко работает навигация в окне ингредиентов в левой части главной страницы.
Не используется хук useContext, который полностью заменяет технология Redux и хук useSelector.

Но, нужно исправить некоторые нюансы.

Что нужно исправить.

  1. У меня не совсем стабильно работала сортировка (перемещение) слоёв бургера в собранном бургере.
    Очень часто элемент становился не на то место, на которое я предполагала, или вообще возвращался на прежнее место (см. снимок с сообщениями в консоли инструментов разработчика в браузере).
    Снимок экрана в 2022-01-26 22-01-50
    Проверьте, пожалуйста, такой ли у Вас алгоритм сортировки слоёв бургера в конструкторе: если пользователь хочет какой-то ингредиент поставить на место другого ингредиента, он должен перемещаемый ингредиент совместить с целевым ингредиентом и осуществить бросок. После этого, другие ингредиенты вместе с целевым смещаются вниз на один слой (если перемещаемый ингредиент двигался с низу), а перемещаемый ингредиент встаёт на место целевого ингредиента. Точно также ингредиенты смещаются вверх, если перемещаемый ингредиент был расположен сверху по отношению к целевому.

  2. Запрос к серверу на получение номера заказа не должен отправляться, пока в бургер не добавлены булки.

@svetanti
Copy link
Owner Author

svetanti commented Jan 27, 2022

Спасибо за ревью!

Насколько я поняла, ошибка Uncaught Error: Invariant Violation: Expected to find a valid target вызывалась тем, что компоненты обновлялись слишком быстро. Добавила небольшое замедление, как рекомендуется здесь:
react-dnd/react-dnd#236 (comment)

@irinamozes
Copy link

Спасибо за ссылку на статью!

Сейчас ошибка, которая была при первой проверке не показывается. Если в бургер не добавлять несколько одинаковых ингредиентов, то сортировка происходит нормально.

Обнаружились другие ошибки.

  1. Если в бургер сначала добавлять соусы и начинки, а потом булки, стоимость бургера становится равной стоимости только двух булок (см. снимок).
    Снимок экрана в 2022-01-27 21-29-10

  2. Если в бургер добавить одинаковые ингредиенты, а затем начать сортировку слоёв, перемещая один из одинаковых ингредиентов, содержимое бургера между булок исчезает, а в консоли появляются сообщения об ошибках (см. снимок).
    Снимок экрана в 2022-01-27 21-26-58

Я думаю, самое главное при сортировке - перемещаемый элемент нужно ставить на целевое место только при броске пользователя, а не при задержке (остановке) им движения мышью.
При этом при движении перемещаемого элемента другие слои можно никуда не смещать, а сместить их только после броска. То есть так, как я Вам писала при предыдущей проверке.

Протестируйте, пожалуйста, проект в различных вариантах действий пользователя, особенно, когда в бургер добавляются одинаковые ингредиенты, кроме булок.

@svetanti
Copy link
Owner Author

Спасибо за комментарии!
Поменяла hover на drop и избавилась от debounce.

@irinamozes
Copy link

Проект отличный!

Всё работает, как задумано.

Не забудьте в следующем задании учитывать асинхронность работы сервера в компонентах, которые должны выводить на экран размётку на основе ответа сервера. Это поможет избежать ошибок в консоли, происходящих из-за попыток что-то рендерить, когда сервер ещё не успел прислать данные для рендера, или произошла ошибка при запросе к серверу, или сервер вернул статус успеха, но не вернул реальных данных.

Задание принимается.

Желаю дальнейших успехов в учёбе и удачи!

@svetanti svetanti merged commit 343af5a into master Jan 29, 2022
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.

None yet

2 participants