"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > पर्दे के पीछे रिएक्ट जेएसएक्स को जावास्क्रिप्ट में कैसे बदला जाता है

पर्दे के पीछे रिएक्ट जेएसएक्स को जावास्क्रिप्ट में कैसे बदला जाता है

2024-11-06 को प्रकाशित
ब्राउज़ करें:705

How React JSX Gets Transformed Into JavaScript Behind the Scenes

जब आप रिएक्ट लिख रहे होते हैं, तो आप अक्सर JSX देखेंगे - एक सिंटैक्स जो आपके जावास्क्रिप्ट कोड के भीतर HTML जैसा दिखता है। लेकिन क्या आपने कभी सोचा है कि यह कोड ब्राउज़र में कैसे चलता है?

यहां जादू है: JSX वैध जावास्क्रिप्ट नहीं है! ब्राउज़र इसे सीधे नहीं समझ सकते. पर्दे के पीछे, बेबेल जैसा उपकरण जेएसएक्स को नियमित जावास्क्रिप्ट में परिवर्तित (या "ट्रांसपाइल") करने के लिए कदम उठाता है।

प्रक्रिया:

1आप JSX लिखते हैं - यह HTML जैसा दिखता है लेकिन आपके रिएक्ट घटकों के भीतर रहता है। उदाहरण के लिए:

const element = 

Hello, World!

;

2बेबल इसे रूपांतरित करता है - निर्माण प्रक्रिया के दौरान, बैबेल React.createElement:
का उपयोग करके JSX को शुद्ध जावास्क्रिप्ट में परिवर्तित करता है।

const element = React.createElement('h1', null, 'Hello, World!');

3.ब्राउज़र में जावास्क्रिप्ट - अंत में, यह मानक जावास्क्रिप्ट वह है जिसे ब्राउज़र निष्पादित करता है, DOM को गतिशील रूप से बनाता है।

बेबेल कैसे काम करता है?

बेबेल एक शक्तिशाली जावास्क्रिप्ट कंपाइलर है जो आपको विभिन्न ब्राउज़रों और वातावरणों में अनुकूलता सुनिश्चित करते हुए नवीनतम जावास्क्रिप्ट सुविधाओं (रिएक्ट में जेएसएक्स सहित) का उपयोग करने में सक्षम बनाता है। यहां बताया गया है कि बेबेल कैसे काम करता है:
1पार्सिंग
बैबेल आपके आधुनिक जावास्क्रिप्ट या जेएसएक्स कोड को एक एब्सट्रैक्ट सिंटैक्स ट्री (एएसटी) में पार्स करके शुरू होता है। विश्लेषण और हेरफेर करना। इस चरण के दौरान, बैबेल कोड पढ़ता है लेकिन इसे अभी तक नहीं बदलता है। उदाहरण के लिए, बेबेल यह JSX कोड लेता है:

const element =

हैलो, वर्ल्ड!

;
const element = 

Hello, World!

;
और एक एएसटी उत्पन्न करता है, जो इस कोड की संरचना का प्रतिनिधित्व करता है।


2रूपांतरण इसके बाद, बेबेल
एएसटी पर प्लगइन्स की एक श्रृंखला लागू करता है। प्रत्येक प्लगइन एएसटी के विशिष्ट भागों को उसके द्वारा परिभाषित नियमों के अनुसार बदलने के लिए जिम्मेदार है। इन परिवर्तनों में आधुनिक जावास्क्रिप्ट सिंटैक्स (जैसे एरो फ़ंक्शन या एसिंक/प्रतीक्षा) को पुराने, ब्राउज़र-संगत संस्करणों में परिवर्तित करना शामिल हो सकता है। JSX के लिए, बेबेल रूपांतरित होता है:

const element =

हैलो, वर्ल्ड!

;
const element = 

Hello, World!

;
const element = React.createElement('h1', null, 'Hello, World!');
3

कोड जनरेशन एक बार सभी परिवर्तन हो जाने के बाद, बैबेल रूपांतरित
AST से जावास्क्रिप्ट कोड उत्पन्न करता है। यह अंतिम चरण है जहां मानव-पठनीय आउटपुट उत्पन्न होता है, जिसे ब्राउज़र या Node.js निष्पादित कर सकता है।

आइए निष्कर्ष निकालें...

यह क्यों मायने रखती है:

जेएसएक्स आपको अधिक सहज, घटक-आधारित यूआई कोड लिखने की अनुमति देता है, लेकिन यह बैबेल और जावास्क्रिप्ट रनटाइम है जो इसे जीवन में लाता है। इस रूपांतरण को समझने से आपको समस्या का बेहतर निवारण करने और अधिक अनुकूलित रिएक्ट ऐप्स लिखने में मदद मिलती है।

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/kashif_ulla_dev/how-react-jsx-gets-transformed-into-javascript-behind-the-scenes-467f?1 यदि कोई उल्लंघन है, तो कृपया स्टडी_गोलंग@163 पर संपर्क करें इसे हटाने के लिए .com
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3