-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Posts task #1468
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
base: master
Are you sure you want to change the base?
Posts task #1468
Conversation
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.
Review Summary
Hey there! 👋 Thanks for submitting your pull request. The code generally looks good and correctly fetches and maps data. However, there are a couple of things we need to address:
- In
src/components/PostInfo/PostInfo.jsx
, theNoCommentsMessage
element should use adata-cy
attribute instead of adata-cy
prop.data-cy
is a custom attribute used for testing, and it should be applied as an HTML attribute, not a React prop. - In
src/components/PostList/PostList.jsx
, theuser
andcomments
props passed to thePostInfo
component are redundant sincePostInfo
fetches it's own data. It's better to remove it from PostList component to avoid unnecessary data passing. - The
src/components/PostList/PostList.scss
file is currently empty. You might want to either add some styling or remove it if it's not needed to keep the project clean and organized.
Once these minor changes are made, I'm happy to approve!
✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨
Important
Fix the issues, commit the changes, and then re-request my review using the Re-request review
button2 in the Reviewers tab.
Tip
If you have any comments about this review, please leave a message in the Add a comment section below and mention me with the @mateacademy-ai-mentor
tag3.
I will read your message during my next review of your pull request. Please do not reply directly to my comments, as that feature is not supported yet.
Caution
Do not close the pull request until the review is complete. Closing it early can lead to unexpected behavior and disrupt the review process.
Footnotes
</div> | ||
</div> | ||
</div> | ||
<PostList posts={posts} /> |
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.
Please ensure that the PostList
component, or any of its child components that are rendered in a loop, has a key
prop assigned to the root element. This is crucial for React to efficiently update the DOM. According to the checklist, you should ADD a key
to the root tag inside an iteration (the first tag after the .map
call).
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.
Review Summary
Okay, the PR is approved! 🎉 There are a couple of minor things to keep in mind for future improvements. First, in src/components/PostInfo/PostInfo.jsx
, remember that data-cy
should be an HTML attribute, not a React prop, and should follow the kebab-case
naming convention (e.g., data-cy="no-comments-message"
). Second, double-check that all iterated components using .map
method have a key
prop, as pointed out in review for the src/components/PostList/PostList.jsx
file. Finally, decide if you need src/components/PostList/PostList.scss
file or remove it to keep project clean. Don't worry too much, these are minor details, and addressing them will make your code even better! Keep up the great work! 🚀
✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨
Footnotes
|
||
function existComment(comments) { | ||
if (!comments || comments.length === 0) { | ||
return <b data-cy="NoCommentsMessage">No comments yet</b>; |
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.
The data-cy
attribute should be applied as an HTML attribute, not as a React prop. Change data-cy="NoCommentsMessage"
to data-cy="no-comments-message"
(lowercase and kebab-case is the convention for custom data attributes in HTML). Refer to my previous review.
[DEMO LINK] (https://Oksigenka.github.io/react_static-list-of-posts-js/)