-
Notifications
You must be signed in to change notification settings - Fork 16
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
HT-5 kostenevich #71
base: master
Are you sure you want to change the base?
HT-5 kostenevich #71
Conversation
Смог пофиксить, проблема была как раз таки в том что не подтягивал ревью на уровне ресторана + проверка на рендер "NO DATA :(" была в && а не || и оно скипало из-за этого useEffect т.к. тот просто не успевал подтянуть нужные данные. |
@@ -13,11 +20,19 @@ class Menu extends Component { | |||
|
|||
state = { error: null }; | |||
|
|||
componentDidMount() { |
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.
еще нужно обработать смену ресторана в componentDidUpdate, если убрать передачу key в Menu, то без componentDidUpdate не будут грузиться новые продукты
}; | ||
|
||
export default connect(null, mapDispatchToProps)(Reviews); | ||
const mapDispatchToProps = (dispatch, props) => ({ | ||
loadReviews: () => dispatch(loadReviews(props.restId)), |
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.
в компоненте идет вызов loadReviews(restId), тут можно простую форму mapDispatchToProps использовать с объектом
const mapStateToProps = (state, props) => ({ | ||
loading: productLoadingSelector(state, props), | ||
loaded: productLoadedSelector(state, props), | ||
restId: props.restId, |
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.
в компонент и так прийдет пропа restId
У меня есть баг, при котором только первый компонент REVIEWS проходит через useEffect, где подтягивает ревьюхи с апи. Если же перейти на табу ревью другого ресторана то при отрисовке нового компонента REVIEWS он не проходит через useEffect и получается что данные не подтягиваются, но последующие функции вызываются и идёт краш из-за того что нет подтянутых данных. Краш можно пофиксить тем, что подтягивать ревью ещё на Ресторане (оно в любом случае так правильно, что бы рендерился баннер адекватно), но по идее баг останется с useEffect'ом. Если не пофикшу до занятий, объясните плс в чём моя ошибка, ибо уже часа 2.5 гуглю и не могу найти решение, мозг совсем поплавился(