Back to Question Center
0

JSX ची ओळख            JSX संबधित विषयांचा परिचय: ES6Tools & लायब्ररीएनएमएपआयआरआरओ मिमल

1 answers:
जेएसएक्सची ओळख

प्रतिक्रिया देण्यासाठी उच्च दर्जाचे, सखोल परिचय, आपण कॅनेडियन पूर्ण-स्टॅक विकसक वेस बॉसच्या आधी जाऊ शकत नाही. त्याचा कोर्स येथे वापरून पहा आणि प्राप्त करण्यासाठी SITEPOINT कोड वापरा 25% बंद आणि साइटपॉईंटस मदत करण्यास मदत करण्यासाठी.

जेव्हा अभिप्राय सादर केला गेला, तेव्हा त्यातल्या एका वैशिष्ट्यामुळे बहुतेक लोकांच्या चेहर्यावर (आणि सर्वात जास्त टीका केली) JSX होते - 24 hour emergency plumbing service near me. जर आपण एखादे कोड उदाहरण पाहिले असेल किंवा आपण कधीही सिग्नल बघत असाल, तर कदाचित आपण सिंटॅक्सवर डबल-लेवल घेतली असेल. एचटीएमएल आणि Semalt या विचित्र जोड काय आहे? हे अगदी वास्तविक कोड आहे का?

Semaltेट म्हणजे जेएसएक्स प्रत्यक्षात काय आहे, हे कसे कार्य करते, आणि हे टाईप आम्ही प्रथम HTML आणि JS मिक्सिंगचे बनवू इच्छित आहोत काय?

JSX म्हणजे काय?

अभिप्राय डॉक्स द्वारा "JavaScript ला विस्तार" किंवा "कॉलिंगसाठी सिंटॅक्स साखर म्हणून परिभाषित केलेले (2 9) प्रतिक्रिया. createElement (घटक, प्रॉप्स, मुले)) ", जेएसएक्स म्हणजे आपले रिकॅक्ट कॉम्पोनंट्स सोपे बनविते.

JSX ही डोमेन-विशिष्ट भाषा (डीएसएल) मानली जाते, जी मिश्या, थिअमेलेफ, मिमल, टिगग किंवा इतर सारख्या टेम्पलेट भाषांसारखीच दिसू शकते.

हे थेट HTML मध्ये प्रस्तुत करीत नाही परंतु वर्च्युअल डॉम द्वारे सेवन केले जाणारे क्लासेसवर प्रतिक्रिया देण्यासाठी भाषांतर करते. अखेरीस, आभासी DOM च्या गूढ जादूच्या माध्यमातून, ते पृष्ठावर त्याचे मार्ग तयार करेल आणि HTML वर भाषांतरित केले जाईल.

हे कसे कार्य करते?

जेएसएक्स मुळात काही अतिरिक्त कार्यक्षमतेसह फक्त जावास्क्रिप्ट आहे. JSX सह, आपण HTML किंवा XML सारखीच दिसणारे कोड लिहू शकता परंतु आपल्या कोडमध्ये अखंडपणे JavaScript पद्धती आणि व्हेरिएबल्सची मिक्सिंग करण्याची क्षमता आहे. जेएसएक्सला एका पारदर्शकाने स्पष्ट केले आहे, जसे की बॅबल आणि JavaScript फ्रेममध्ये प्रस्तुत केले आहे जे UI फ्रेमवर्क (याबाबतीत, मिडल या समस्येचे) समजते.

जेएसएक्स सारख्या क्षुल्लक? ते छान आहे हे तांत्रिकदृष्ट्या आवश्यक नाही, आणि प्रतिक्रिया दस्तऐवज प्रत्यक्षात "JSX विना रिएक्ट" वापरून वर एक विभाग समाविष्ट आहे. मी आत्ता आपल्याला सावध करूया, परंतु, हे खूप चांगले नाही. मला थोडा विश्वास आहे का? इथे बघ.

जेएसएक्स:

     क्लास साइटपॉईंट घटक विस्तारित {रेंडर करा    {परत ( 
माझे नाव आहे. प्रॉप्स myName}
)}}
(4 9)

प्रतिक्रिया न देणार्या JSX:

     श्रेणी साइटपॉईंट घटक विस्तारित {रेंडर करा    {रिटर्न प्रतिक्रिया. createElement ("div",निरर्थक,"माझं नावं आहे",प्रतिक्रिया द्या. createElement ("span",निरर्थक,हे. प्रॉप्स माझे नाव))}}   (4 9) 

नक्कीच, त्या लघुउद्घाने त्या पृष्ठावरील कोडच्या तुकड्यावर आपण विचार करीत असाल, "अरे, ते इतके वाईट नाही, मी हे करू शकतो. "पण त्यासारखे एक संपूर्ण ऍप्लिकेशन लिहिण्याची आपण कल्पना करू शकता?

उदाहरण फक्त दोन सोप्या नेस्टेड HTML घटक आहेत, फॅन्सी काहीही नाही. मूलभूतपणे, फक्त नेस्टेड (2 9) हॅलो वर्ल्ड . JSX शिवाय आपला अभिप्राय अर्ज लिहिण्याचा प्रयत्न करणे खूप वेळ घेणारे असेल आणि जर आपण डेव्हलँड ™ मधील वर्णांप्रमाणे कार्य करीत असणार्या इतर डेव्हलपरांसारखे असाल, तर ते बहुधा त्वरीत स्पॅगेटी कोड गोंधळ मध्ये वळतील. युक!

चौकट आणि लायब्ररीचा वापर करणे आणि त्यासारख्या गोष्टी आपल्या जीवनास सोपे करणे म्हणजे कठीण आहे. मला खात्री आहे की आम्ही सर्व आमच्या कारकीर्दांमध्ये अतिरेकी आणि लायब्ररी किंवा फ्रेमवर्क्सचा दुरुपयोग पाहिले आहे, परंतु आपल्या Semaltटसह JSX वापरून निश्चितपणे अशा प्रकरणांपैकी एक नाही.

चिंता कशा सोडविण्याबद्दल?

आता, आपल्यासाठी जे आमच्या जेएसवर आमचे एचटीएमएल मिक्स न करणे शिकले - हे किती वाईट आहे, आणि आम्ही कसे केले, तर आमच्या ऍप्लिकेशन्सच्या बग गॉड ऑफने आपल्या अॅप्लिकेशन्सला पछाडले असेल - जावास्क्रिप्ट कदाचित सर्व प्रकारच्या चुकीचे वाटत आहे.

पण, जशी वाटेल तितकी विलक्षण, खरं आहे वाईट नाही , आणि आपल्या चिंता अजूनही वेगळे आहेत. जोपर्यंत एखाद्या व्यक्तीने आपल्या JavaScript codebase च्या आत HTML / XML च्या छोट्या तुकडयांचा वापर केला आहे तो खूपच सोयीस्कर आहे, यासाठी प्रतिक्रिया देऊन काम करत आहे .खरोखर जादुई आहे हे समीकरणापैकी HTML चे प्रबंधन घेते आणि आपल्याला छान, ठोस कोडसह सोडते. फक्त कोड. हे मार्कअप लँगवेज वापरण्याचा प्रयत्न करण्याच्या वेदना कमी करण्यासाठी मदत करते - जे वर्ड डॉक्युमेंट्स तयार करण्यासाठी डिझाइन केले होते - अनुप्रयोग तयार करण्यासाठी आणि त्यास अनुप्रयोगाच्या कोडच्या नियंत्रणात परत आणते.

आपल्या HTML वरील आपल्या Semaltle विभक्त न करण्याची आणखी एक समस्या: जर आपला JS डाउनलोड करण्यात किंवा चालविण्यास अपयशी ठरला, आणि वापरकर्ता फक्त HTML / CSS सोबत रेंडर करण्यासाठीच राहिला आहे? जर आपण आपली अॅक्टिबिल रिअॅक्ट मार्ग तयार करत असाल, तर आपला HTML (आणि आपण आपल्या सीप जर वेबपॅक वापरत असाल तर), आपले Semalt स्वतःसह एकत्रित केले आहे. त्यामुळे वापरकर्त्याला फक्त एक लहान एचटीएमएल फाईल डाउनलोड करण्यासाठी आहे, नंतर मोठ्या प्रमाणात साॅफ्ट पेलोड जे सर्व काही समाविष्ट करते

दुर्दैवाने, शोध इंजिन्स आणि एसइओबद्दल चिंता करणे ही एक वैध चिंता आहे. आम्ही सर्व प्रमुख सर्च इंजिन आता जावास्क्रिप्ट रेंडर करीत आहोत हे मला माहीत आहे, परंतु जावास्क्रिप्टसह प्रारंभिक रेंडरिंग अजूनही धीमे असू शकते, ज्यामुळे आपल्या संपूर्ण रँकिंगवर परिणाम होऊ शकतो. हे कमी करण्यासाठी, क्लायंटला पाठविण्यापूर्वी सर्व्हरवर आपल्या प्रतिक्रियाचा प्रारंभिक रेंडर करणे शक्य आहे. हे केवळ शोध इंजिनांना आपल्या साइटवर द्रुतगती करण्याची परवानगी देणार नाही तर आपल्या वापरकर्त्यांना जलद अर्थपूर्ण पेंट प्रदान करेल.

असे करणे त्वरीत गुंतागुंतीत होऊ शकते, परंतु या लेखनाच्या वेळी, साइटपॉईंट स्वतःच ही पद्धत वापरते. ब्रॅड डेन्व्हरने हे कसे केले यावर एक विलक्षण लेखन-लेखन केले: "युनिव्हर्सल रेन्डरिंग: हमने साइटपॉईंट कशी बांधली"

सर्व्हर-प्रतिपादन करणे अद्याप अयशस्वी लोड (जे असामान्य आहे) किंवा धीमे लोड वेळा (अधिक सामान्य) सह मदत करणार आहे. जे वापरकर्ते पूर्णपणे JavaScript अक्षम करतात त्यांना मदत करणार नाही. क्षमस्व, परंतु रिअॅक्ट अॅप अजूनही जावास्क्रिप्ट-आधारित अनुप्रयोग आहे. आपण पडद्यामागे खूप काही करू शकता, परंतु एकदा आपण अॅप्स कार्यक्षमता आणि राज्य व्यवस्थापन (उदा. फ्लक्स, Semaltेट, किंवा मॉबॅक) मध्ये मिसळण्याची सुरुवात केली, तर आपला गुंतवणूकीचा काळा पैसा गुंतवणूकीचा प्रारंभ नकारात्मक चालू होईल.

केवळ प्रतिक्रिया साठी नाही

प्रतिक्रियांसह जेएसएक्स खूप छान सामग्री आहे. पण आपण आणखी एक फ्रेमवर्क किंवा ग्रंथालय वापरत असल्यास पण तरीही वापरु इच्छिता? ठीक, आपण शुभेच्छा आहोत - कारण JSX तांत्रिकदृष्ट्या रीएक्ट करण्यासाठी बांधलेले नाही. तो अजूनही फक्त डीएसएल किंवा "सिंटॅक्स साखर", लक्षात ठेवा? Vue js प्रत्यक्षात बॉक्सच्या बाहेर जेएसएक्सला समर्थन करतो आणि कोरे 2 आणि एम्बर सारख्या अन्य फ्रेमवर्क वापरून ते वापरण्याचा प्रयत्न केला आहे.

मला आशा आहे की या JSX द्रुत परिचयने आपल्याला जेएसएक्स काय आहे ह्याबद्दल अधिक चांगल्या प्रकारे समजून घेण्यास मदत केली, हे आपल्याला कसे मदत करू शकते आणि आपले अनुप्रयोग कसा तयार करायचा ते कसे वापरावे. आता तेथे परत मिळवा आणि काही छान सामग्री करा!

(9 2) अनुशंसित अभ्यासक्रम (9 3)(9 4)(9 5) JSX ची ओळखJSX संबधित विषयांचा परिचय:
ES6Tools आणि लायब्ररीएनएमएपीआयआयआरओ अर्धवेळ
(9 8) लेखक भेटलो
मॅट बर्नेट
मॅट हे एक व्यावसायिक सॉफ्टवेअर डेव्हलपर आहे आणि वेब देव बद्दल ते प्रेरित आहे. Mawburn वर त्याच्याबद्दल अधिक शोधा. कॉम
March 1, 2018