Skip to content

Commit

Permalink
implemented changes
Browse files Browse the repository at this point in the history
  • Loading branch information
AlokTakshak committed Oct 17, 2019
1 parent 68d76cc commit d4fc2df
Showing 1 changed file with 16 additions and 17 deletions.
33 changes: 16 additions & 17 deletions content/docs/reference-glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,12 +90,11 @@ class Welcome extends React.Component {
props.number = 42;
```

यदि आपको उपयोगकर्ता इनपुट या नेटवर्क प्रतिक्रिया के जवाब में कुछ मूल्य को संशोधित करने की आवश्यकता है, तो इसके बजाय `state` का उपयोग करें।
यदि आपको यूजर इनपुट या नेटवर्क रिस्पांस के जवाब में कुछ वैल्यू को बदलने की आवश्यकता है, तो इसके बजाय `state` का उपयोग करें।

### `props.children` {#propschildren}


`props.children` हर कौम्पोनॅन्ट पर उपलब्ध है। इसमें किसी कौम्पोनॅन्ट के खुलने और बंद होने के बीच की सामग्री शामिल है। उदाहरण के लिए:
`props.children` हर कौम्पोनॅन्ट पर उपलब्ध है। इसमें किसी कौम्पोनॅन्ट के खुलने और बंद होने के टैग्स के बीच की सामग्री शामिल है। उदाहरण के लिए:

```js
<Welcome>Hello world!</Welcome>
Expand All @@ -121,47 +120,47 @@ class Welcome extends React.Component {

### [`state`](/docs/state-and-lifecycle.html#adding-local-state-to-a-class) {#state}

एक कौम्पोनॅन्ट को `state` की आवश्यकता होती है जब समय के साथ जुड़े कुछ डेटा बदलते हैं। उदाहरण के लिए, एक `Checkbox` कौम्पोनॅन्ट को अपने state में `isChecked` की आवश्यकता हो सकती है, और एक `NewsFeed` कौम्पोनॅन्ट अपने state में `fetchedPosts` का ट्रैक रखना चाह सकता है।
एक कौम्पोनॅन्ट को `state` की आवश्यकता तब होती है जब उस कौम्पोनॅन्ट का डेटा कभी बदलता है। उदाहरण के लिए, एक `Checkbox` कौम्पोनॅन्ट को अपने state में `isChecked` की आवश्यकता हो सकती है, और एक `NewsFeed` कौम्पोनॅन्ट अपने state में `fetchedPosts` का ट्रैक रखना चाह सकता है।

`state` और `props` के बीच सबसे महत्वपूर्ण अंतर यह है कि `props` को मूल कौम्पोनॅन्ट से पारित किया जाता है, लेकिन `state` को कौम्पोनॅन्ट द्वारा ही प्रबंधित किया जाता है। एक कौम्पोनॅन्ट अपने `props` को नहीं बदल सकता है, लेकिन यह अपनी `state` को बदल सकता है।
`state` और `props` के बीच सबसे महत्वपूर्ण अंतर यह है कि `props` को पैरेंट कौम्पोनॅन्ट से पास किया जाता है, लेकिन `state` को कौम्पोनॅन्ट द्वारा ही प्रबंधित किया जाता है। एक कौम्पोनॅन्ट अपने `props` को नहीं बदल सकता है, लेकिन यह अपनी `state` को बदल सकता है।

बदलते डेटा के प्रत्येक विशेष टुकड़े के लिए, केवल एक कौम्पोनॅन्ट होना चाहिए जो उस डेटा का "मालिक" हो और अपने state में रखे। दो अलग-अलग कौम्पोनॅन्ट्स की states को सिंक्रनाइज़ करने का प्रयास न करें। इसके बजाय, इसे उनके निकटतम साझा पूर्वज [में रखे](/docs/lifting-state-up.html), और इसे उन दोनों को props के रूप में नीचे दें
बदलते डेटा के प्रत्येक विशेष टुकड़े के लिए, केवल एक कौम्पोनॅन्ट होना चाहिए जो उस डेटा का "मालिक" हो और अपने state में रखे। दो अलग-अलग कौम्पोनॅन्ट्स के states को सिंक्रनाइज़ करने का प्रयास न करें। इसके बजाय, इसे उनके निकटतम साझा पूर्वज [में रखे](/docs/lifting-state-up.html), और इसे उन दोनों को props के रूप में पास करें

## [Lifecycle मेथड्स](/docs/state-and-lifecycle.html#adding-lifecycle-methods-to-a-class) {#lifecycle-methods}

Lifecycle मेथड्स कस्टम कार्यक्षमता हैं जो किसी कौम्पोनॅन्ट के विभिन्न चरणों के दौरान निष्पादित होते हैं। मेथड्स तब उपलब्ध होते हैं जब कौम्पोनॅन्ट उपलब्ध होने के बाद DOM ([माउंटिंग](/docs/react-component.html#mounting)) में सम्मिलित होता हैं, जब कौम्पोनॅन्ट अपडेट करता है, और जब कौम्पोनॅन्ट अनमाउंट हो जाता है या DOM से हटा दिया जाता है।
Lifecycle मेथड्स कस्टम कार्यक्षमता हैं जो किसी कौम्पोनॅन्ट के विभिन्न चरणों के दौरान निष्पादित होते हैं। मेथड्स तब उपलब्ध होते हैं जब कौम्पोनॅन्ट उपलब्ध होने के बाद DOM ([माउंटिंग](/docs/react-component.html#mounting)) में सम्मिलित होता हैं, जब कौम्पोनॅन्ट अपडेट करता है, और जब कौम्पोनॅन्ट अनमाउंट हो जाता है या DOM से हटा दिया जाता है।

## [नियंत्रित](/docs/forms.html#controlled-components) बनाम [अनियंत्रित कौम्पोनॅन्ट](/docs/uncontrolled-components.html)
## [Controlled](/docs/forms.html#controlled-components) बनाम [Uncontrolled कौम्पोनॅन्ट](/docs/uncontrolled-components.html)

फॉर्म इनपुट से निपटने के लिए React के दो अलग-अलग दृष्टिकोण हैं।

एक इनपुट फॉर्म एलिमेंट जिसका मूल्य React द्वारा नियंत्रित किया जाता है, एक *नियंत्रित कौम्पोनॅन्ट* कहा जाता है। जब कोई उपयोगकर्ता एक नियंत्रित कौम्पोनॅन्ट में डेटा दर्ज करता है तो एक परिवर्तन ईवेंट हैंडलर चालू हो जाता है और आपका कोड तय करता है कि इनपुट वैध है (अपडेट किए गए मूल्य के साथ पुन: रेंडर करके)। यदि आप फिर से री-रेंडर नहीं करते हैं, तो फार्म एलिमेंट अपरिवर्तित रहेगा।
एक इनपुट फॉर्म एलिमेंट जिसके वैल्यू React द्वारा नियंत्रित किया जाता है, एक *controlled कौम्पोनॅन्ट* कहते है। जब कोई यूजर एक controlled कौम्पोनॅन्ट में डेटा दर्ज करता है तो एक परिवर्तन ईवेंट हैंडलर चालू हो जाता है और आपका कोड तय करता है कि इनपुट वैध है (अपडेट किए गए मूल्य के साथ पुन: रेंडर करके)। यदि आप फिर से री-रेंडर नहीं करते हैं, तो फार्म एलिमेंट अपरिवर्तित रहेगा।

एक *अनियंत्रित कौम्पोनॅन्ट* React के बाहर फार्म एलिमेंट्स की तरह काम करता है। जब कोई उपयोगकर्ता किसी प्रपत्र फ़ील्ड (एक इनपुट बॉक्स, ड्रॉपडाउन, आदि) में डेटा इनपुट करता है, तो अपडेट की गई जानकारी React के कुछ भी करने की आवश्यकता के बिना परिलक्षित होती है। हालाँकि, इसका अर्थ यह भी है कि आप किसी निश्चित मान के लिए फ़ील्ड को बाध्य नहीं कर सकते।
एक *uncontrolled कौम्पोनॅन्ट* React के बाहर फार्म एलिमेंट्स की तरह काम करता है। जब कोई यूजर किसी फॉर्म फ़ील्ड (एक इनपुट बॉक्स, ड्रॉपडाउन, आदि) में डेटा इनपुट करता है, तो अपडेट की गई जानकारी React के कुछ भी करने की आवश्यकता के बिना परिलक्षित होती है। हालाँकि, इसका अर्थ यह भी है कि आप किसी निश्चित मान के लिए फ़ील्ड को बाध्य नहीं कर सकते।

ज्यादातर मामलों में आपको नियंत्रित कौम्पोनॅन्ट्स का उपयोग करना चाहिए।
ज्यादातर मामलों में आपको controlled कौम्पोनॅन्ट्स का उपयोग करना चाहिए।

## [Keys](/docs/lists-and-keys.html) {#keys}

"keys" एक विशेष string विशेषता है जिसे आपको एलिमेंट्स की सारणी बनाते समय शामिल करना होगा। keys React को पहचानने में मदद करती हैं कि कौन से आइटम बदल गए हैं, जोड़े गए हैं या हटा दिए गए हैं। तत्वों को एक स्थिर पहचान देने के लिए सरणी के अंदर तत्वों को कुंजी दी जानी चाहिए।
"keys" एक विशेष string विशेषता है जिसे आपको एलिमेंट्स की सारणी बनाते समय शामिल करना होगा। keys React को पहचानने में मदद करती हैं कि कौन से आइटम बदल गए हैं, जोड़े गए हैं या हटा दिए गए हैं। एलिमेंट्स को एक स्थिर पहचान देने के लिए array के अंदर एलिमेंट्स को key दी जानी चाहिए।

Keys को केवल एक ही array में सिबलिंग एलिमेंट्स के बीच अद्वितीय होना चाहिए। उन्हें संपूर्ण एप्लिकेशन या किसी एकल कौम्पोनॅन्ट में विशिष्ट होने की आवश्यकता नहीं है।
Keys को केवल एक ही array में सिबलिंग एलिमेंट्स के बीच अद्वितीय होना चाहिए। उन्हें संपूर्ण एप्लिकेशन या किसी एक कौम्पोनॅन्ट में विशिष्ट होने की आवश्यकता नहीं है।

`Math.random()` की तरह keys को कुछ भी पास मत करो। यह महत्वपूर्ण है कि keys में फिर से रेंडर करने वालों की एक "स्थिर पहचान" हो ताकि React यह निर्धारित कर सके कि आइटम कब जोड़े गए, हटाए गए या फिर से ऑर्डर किए गए। आदर्श रूप से, keys को आपके डेटा से आने वाले अद्वितीय और स्थिर पहचानकर्ताओं के अनुरूप होना चाहिए, जैसे कि `post.id`.
`Math.random()` की तरह keys को कुछ भी पास मत करो। यह महत्वपूर्ण है कि keys में फिर से रेंडर करने वालों की एक "स्थिर पहचान" हो ताकि React यह निर्धारित कर सके कि आइटम कब जोड़े गए, हटाए गए या फिर से ऑर्डर किए गए। आदर्श रूप से, keys को आपके डेटा से आने वाले अनोखा और स्थिर पहचानकर्ताओं के अनुरूप होना चाहिए, जैसे कि `post.id`.

## [Refs](/docs/refs-and-the-dom.html) {#refs}

React एक विशेष गुण का समर्थन करता है जिसे आप किसी भी कौम्पोनॅन्ट से जोड़ सकते हैं। `ref` गुण [`React.createRef()` फ़ंक्शन](/docs/react-api.html#reactcreateref) या कॉलबैक फ़ंक्शन, या string (लीगेसी API में) द्वारा बनाई गई ऑब्जेक्ट हो सकती है। जब `ref` गुण कॉलबैक फ़ंक्शन होती है, तो फ़ंक्शन अपने तर्क के रूप में अंतर्निहित DOM एलिमेंट या class इंस्टेंस उदाहरण (एलिमेंट के प्रकार के आधार पर) प्राप्त करता है। यह आपको DOM एलिमेंट या कौम्पोनॅन्ट इंस्टेंस तक सीधी पहुँच प्रदान करने की अनुमति देता है।
React एक विशेष एट्रिब्यूट का समर्थन करता है जिसे आप किसी भी कौम्पोनॅन्ट से जोड़ सकते हैं। `ref` एट्रिब्यूट [`React.createRef()` फ़ंक्शन](/docs/react-api.html#reactcreateref) या कॉलबैक फ़ंक्शन, या string (लेगेसी API में) द्वारा बनाया गया ऑब्जेक्ट हो सकता है। जब `ref` एट्रिब्यूट कॉलबैक फ़ंक्शन होता है, तो फ़ंक्शन अपने argument के रूप में अंतर्निहित DOM एलिमेंट या class इंस्टेंस उदाहरण (एलिमेंट के प्रकार के आधार पर) प्राप्त करता है। यह आपको DOM एलिमेंट या कौम्पोनॅन्ट इंस्टेंस तक सीधी पहुँच प्रदान करने की अनुमति देता है।

संयम से refs का प्रयोग करें। यदि आप अक्सर अपने ऐप में "चीजों को बनाने" के लिए refs का उपयोग करते हैं, तो [टॉप-डाउन डेटा प्रवाह](/docs/lifting-state-up.html) के साथ अधिक परिचित होने पर विचार करें।

## [इवेंट्स](/docs/handling-events.html) {#events}

React एलिमेंट्स के साथ इवेंट्स को संभालने से कुछ वाक्यात्मक अंतर होते हैं:
React एलिमेंट्स के साथ इवेंट्स को संभालने से कुछ सिंटैक्टिक अंतर होते हैं:

* React इवेंट हैंडलर्स को लोअरकेस के बजाय कैमकलेस का उपयोग करके नामित किया जाता है।
* JSX के साथ आप एक string के बजाय फंक्शन को हैंडलर के रूप में पास करते हैं।

## [Reconciliation](/docs/reconciliation.html) {#reconciliation}

जब किसी कौम्पोनॅन्ट की props या state में परिवर्तन होता है, तो React पहले से रेंडर किए गए व नए लौटे एलिमेंट की तुलना करके निर्णय करता है कि वास्तविक DOM को अपडेट की आवश्यक है या नहीं। जब वे समान नहीं होते हैं, तो React DOM को अपडेट करता है। इस प्रक्रिया को "reconciliation" कहा जाता है।
जब किसी कौम्पोनॅन्ट का props या state में परिवर्तन होता है, तो React पहले से रेंडर किए गए व नए लौटे एलिमेंट की तुलना करके निर्णय करता है कि वास्तविक DOM को अपडेट की आवश्यक है या नहीं। जब वे समान नहीं होते हैं, तो React DOM को अपडेट करता है। इस प्रक्रिया को "reconciliation" कहा जाता है।

0 comments on commit d4fc2df

Please sign in to comment.