Import Expand Button on the Lecturer page#96
Conversation
Dmatrushka19
left a comment
There was a problem hiding this comment.
При тесте не всегда сворачивание работает корректно: пример /lecturer?lecturer_id=6757 первый отзыв сворачивает неверно. Должен оставлять только первые три строки. Возможно дело в том, как был спарсен этот отзыв с сайта, но надо разобраться.
В идеале, зафиксировать длину 3 строки, и если отзыв длиннее - всегда сворачивать.
То, что при 'pnpm check' стили ругаются на другие файлы - не обращай внимания.
|
Давайте более содержательно называть ПРы и ветки |
… вызывается функция showExpandButton
Dmatrushka19
left a comment
There was a problem hiding this comment.
Тесты прокатил, все гуд
Изменения, как у Дани в админке, кроме хука watch, который нужен, чтобы при переиспользовании кнопки "свернуть" для нового комментария корректно применялась функция showExpandButton.
Без watch работает так:
проблема в поведении v-data-iterator и Vue при переходе между страницами: Когда используется TheReviewCard в LecturerPage компоненты не пересоздаются при переключении пагинации, а переиспользуются (потому что key="review.uuid" остаётся тем же).
Поэтому состояние expanded и showExpandButton сохраняется между переключениями страниц. То есть если первый отзыв на первой странице переключил expanded = true, то при переходе на вторую страницу, у первого отзыва expanded = true и кнопка больше не отображается, потому что считается, что это короткий отзыв, которому кнопка не нужна.
Почему не работает функция showExpandButton: Хук onUpdated() вызывается до того, как Vue переразметит и пересчитает высоту текста при переходе на следующую страницу, то есть высота текста проверяется слишком рано и Vue решает, что кнопка не нужна.
Изменения
Детали реализации
Check-List
blackиisortдля Back-End илиPrettierдля Front-End?