हुक में कंपोनेंटडिडमाउंट के बराबर उपयोगइफेक्ट फंक्शन है। उपयोग करने के लिए पारित कार्य प्रभाव प्रत्येक घटक प्रतिपादन पर निष्पादित होते हैं-जब तक कि आप इसके लिए दूसरा तर्क पारित नहीं करते।
उपयोग किस लिए किया जाता हैप्रभाव?
useEffect क्या करता है? इस हुक का उपयोग करके, आप रिएक्ट को बताते हैं कि आपके घटक को रेंडर करने के बाद कुछ करने की आवश्यकता है। रिएक्ट आपके द्वारा पारित फ़ंक्शन को याद रखेगा (हम इसे अपने "प्रभाव" के रूप में संदर्भित करेंगे), और बाद में DOM अपडेट करने के बाद इसे कॉल करेंगे।
क्या कॉम्पोनेन्टडिडमाउंट एक रिएक्ट हुक है?
useEffect एक रिएक्शन हुक है जहां आप साइड इफेक्ट लागू कर सकते हैं, उदाहरण के लिए, सर्वर से डेटा प्राप्त करना। पहला तर्क कॉलबैक है जिसे ब्राउज़र लेआउट और पेंट के बाद सक्रिय किया जाएगा।
useEffect को क्यों नहीं कहा जाता है?
ऐसा होने का कारण यह है कि एपीआई कॉल एसिंक्रोनस है, यह तुरंत राज्य को पॉप्युलेट नहीं करता है, इसलिए रेंडर पहले होता है और पढ़ने की कोशिश करता है। प्रारंभिक मौसम राज्य से वर्तमान शून्य। समाधान: अपनी रेंडर विधि में, सुनिश्चित करें कि आप मौसम को न पढ़ें।
क्या useEffect हमेशा माउंट पर चलता है?
महत्वपूर्ण: उपयोगइफेक्ट हुक हमेशा माउंट पर चलेगा, भले ही इसकी निर्भरता सरणी में कुछ भी हो। हम शायद अपने डेटा पर इस प्रभाव को वास्तव में नहीं चलाना चाहते हैं जब यह अपरिभाषित है (क्योंकि यह प्रारंभिक रेंडर पर होगा) बल्कि हम तब तक इंतजार करना चाहते हैं जब तक कि यह एपीआई कॉल से पॉप्युलेट न हो जाए।