रिएक्ट में, एक घटक आपके यूजर इंटरफेस (यूआई) के लिए बिल्डिंग ब्लॉक की तरह है। इसे कोड के एक छोटे, पुन: प्रयोज्य हिस्से के रूप में सोचें जो परिभाषित करता है कि आपके पृष्ठ का एक विशेष भाग कैसा दिखना और व्यवहार करना चाहिए। ये घटक डेवलपर्स को सरल, स्वतंत्र और पुन: प्रयोज्य टुकड़ों को मिलाकर जटिल यूआई बनाने की अनुमति देते हैं।
सामान्य तौर पर, घटक अनिवार्य रूप से यूआई के स्व-निहित, पुन: प्रयोज्य टुकड़े होते हैं जिन्हें ऐसे कार्यों के रूप में सोचा जा सकता है जो उपयोगकर्ता इंटरफ़ेस के कुछ हिस्से को प्रस्तुत करते हैं।
मैं जानता हूं कि स्व-निहित, पुन: प्रयोज्य टुकड़े और रेंडर शब्दों के बारे में कुछ विरोधाभास हो सकता है।
आइए घटकों को परिभाषित करके एक-एक करके सिद्ध करें। उफ़!? मैं भूल गया कि आप नहीं जानते कि एक साधारण घटक को कैसे परिभाषित किया जाए। चिंता मत करो मैं यहाँ हूँ? सभी चीजों को तोड़ने के लिए. तो आइए गोता लगाएँ-?
मान लीजिए आप एक ई-कॉमर्स एप्लिकेशन विकसित कर रहे हैं। एप्लिकेशन में कई स्थानों या कई पृष्ठों पर आपको एक ही उत्पाद कार्ड प्रस्तुत करना होगा। रेंडरिंग का अर्थ है यूआई पर प्रतिक्रिया देना।
अब आपका समय है? सोचने के लिए? आप अपने एप्लिकेशन में उत्पाद कार्ड को एकाधिक पृष्ठों में कैसे प्रदर्शित कर सकते हैं।
परंपरागत रूप से वेब पेज बनाते समय डेवलपर्स अपनी सामग्री को चिह्नित करते हैं और कुछ जावास्क्रिप्ट छिड़क कर इंटरेक्शन जोड़ते हैं। यह तब बहुत अच्छा काम करता है जब समान रूप से चिह्नित कई पेज कई पेजों में प्रतिस्थापित नहीं होते हैं, जो बहुत अधिक नहीं होता है जिससे आप कभी-कभी ऊब जाते हैं और साथ ही थकाऊ होते हैं और साथ ही डीबग और प्रबंधन करना कठिन होता है। इसलिए, आपके टूटने का एक मौका है कोड और इसे प्रबंधित करना बोझिल हो सकता है।
यहां आप रिएक्ट कंपोनेंट आर्किटेक्चर की सुंदरता की खोज करेंगे। रिएक्ट आपको घटक बनाने और जितनी चाहें उतनी जगहों पर उपयोग करने देता है।
// === Reminder === Components are regular javascript functions that can sprinkled with javascript
function ProductCard(){ return() }title of the product
price of the product
description of the product
// rest of info
आइए इसे तोड़ें-
चरण-1: एक साधारण जावास्क्रिप्ट फ़ंक्शन को ProductCard नाम के रूप में घोषित करें
चरण-2: घटक/फ़ंक्शन एक
// === Reminder === All tags must return under a parent tag or using a react fragment(>)
// === Reminder === React component name must start with a capital letter otherwise it won't treated as a component
प्रोडक्टकार्ड घटक h1,h2,p, या HTML जैसे लिखे गए कुछ अन्य आवश्यक टैग के साथ एक div टैग लौटाता है, लेकिन यह हुड के नीचे जावास्क्रिप्ट है। सिंटैक्स को JSX (जावास्क्रिप्ट XML) कहा जाता है। कोई चिंता नहीं मैं इसे बाद में समझाऊंगा।
// === Reminder === JSX is a syntax extension for javascript that lets you write HTML-like markup inside a javascript file which handles the logic of rendering and markup live together in the same place as components.
अब आपका घटक उपयोग के लिए तैयार है। उदाहरण के लिए, आपके पास एक उत्पाद पृष्ठ है और आपको कुछ उत्पाद प्रस्तुत करने हैं।
//Products.js or jsx file function ProductCard(){ return() } function ProductPage(){ return(title of the product
price of the product
description of the product
// rest of info) } product page
आपका ब्राउज़र ProductCard को 3 गुना प्रस्तुत करेगा इसका मतलब है कि ब्राउज़र को 3 उत्पाद कार्ड दिखाई दे चुके हैं।
अब तक तो सब ठीक है?। सफलतापूर्वक हमने उत्पाद कार्ड को उत्पाद पृष्ठ पर प्रस्तुत कर दिया है।
अब कोड को व्यवस्थित करने का समय:
आपके पास एक या अधिक घटक जैसे ProductCard, ProductReviewCard, SimpleProductCard इत्यादि हो सकते हैं, इसलिए, सभी घटकों को एक फ़ाइल में घोषित करना और प्रबंधित करना बोझिल हो सकता है। तो, आइए इसे केवल फ़ाइल संरचना का उपयोग करके प्रबंधित करने के लिए इसे और अधिक व्यवस्थित बनाएं।
आइए एक पुन: प्रयोज्य फ़ोल्डर बनाएं क्योंकि उत्पाद कार्ड का उपयोग कई पृष्ठों से किया जा सकता है। पुन: प्रयोज्य फ़ोल्डर के अंदर ProductCard.js/jsx फ़ाइल बनाएं।
//reusable/ProductCard.js or jsx file function ProductCard(){ return() }title of the product
price of the product
description of the product
// rest of info
अब एक मुद्दा यह है कि यदि आप ProductCardcomponent को अलग करते हैं तो इसे ProductPage फ़ाइल से कैसे उपयोग किया जाएगा। मुझे पता है कि आप पहले से ही समझ गए होंगे कि हाँ, हम ProductCardfile से ProductCardfunction को नाम या डिफ़ॉल्ट के रूप में निर्यात कर सकते हैं जिसे आप वास्तव में पसंद करते हैं।
//reusable/ProductCard.js or jsx file export default function ProductCard(){ return() }title of the product
price of the product
description of the product
// rest of info
अब इसे ProductPage फ़ाइल से प्रयोग किया जा सकता है। बस ProductPagefile से ProductCard आयात करें और फिर जितना चाहें इसका उपयोग करें।
//ProductPage.js or jsx file import ProducrCard from './reusable/ProductCard.js' function ProductPage(){ return() } product page
मैंने पहले बताया था कि घटक का उपयोग पुन: प्रयोज्यता, चिंता के पृथक्करण और मॉड्यूलरिटी के लिए क्यों किया जाना चाहिए।
इस सब के बाद, आप समझ गए हैं कि आप अपने घटक को भी नेस्ट कर सकते हैं।
ठीक है आइए फिर से देखें-?
एक लेआउट फ़ोल्डर बनाएं
लेआउट फ़ोल्डर के अंतर्गत हेडर फ़ोल्डर बनाएं, फिर हेडर फ़ोल्डर के अंदर Index.js फ़ाइल बनाएं
export default function Header(){ return() } Header
create `Footer` folder under the `Layout` folder then create `index.js` file inside `Footer` folder export default function Footer(){ return() } Footer
अब लेआउट फ़ोल्डर के अंतर्गत Index.js फ़ाइल बनाएं
import Header from './Header'; import Footer from './Footer'; export default function Layout(){ return() } page content
मुझे आशा है कि आप पहले ही रिएक्ट कंपोनेंट आर्किटेक्चर की सुंदरता का पता लगा चुके होंगे। यह तो अभी शुरुआत है और आपके मन में रुचि बढ़ाने का प्रयास किया गया है।
हैप्पी कोडिंग??
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3