यदि 'प्रतिक्रिया' 'प्रतिक्रिया' से डिफ़ॉल्ट निर्यात है, तो हम 'रिएक्ट' के बजाय किसी अन्य नाम का उपयोग क्यों नहीं कर सकते हैं


9

इसलिए, मैं इस प्रश्न का कुछ उत्तर खोज रहा था और पाया कि आयात करते समय, 'प्रतिक्रिया' को {} में होने की आवश्यकता नहीं है क्योंकि यह डिफ़ॉल्ट निर्यात है और नामांकित निर्यात नहीं है, खैर यह सही है, लेकिन मैंने भी देखा है डिफ़ॉल्ट निर्यात आयात करते समय, हम आयात पर इसके लिए किसी भी नाम का उपयोग कर सकते हैं। लेकिन इस मामले में, हम केवल नीचे आयात का उपयोग कर सकते हैं,

import React from 'react';

और नहीं

import Somename from 'react';

जवाबों:


10

आप उस तरह से React आयात कर सकते हैं, लेकिन यदि आप JSX का उपयोग कर रहे हैं, तो आपको ट्रांसपॉइलर को बताने के लिए अपने कॉन्फ़िगरेशन को अपडेट करने की भी आवश्यकता है जो आप उपयोग कर रहे हैं कि "बिल्डर" फ़ंक्शन अब नहीं है React.createElement, लेकिन इसके बजाय है Somename.createElement। (यदि आप बैबल का उपयोग कर रहे हैं, तो आप pragmaनिर्देश के साथ ऐसा करते हैं ।) ऐसा इसलिए है, क्योंकि जैसा कि रिएक्ट प्रलेखन में कहा गया है , यह है:

const element = (
  <h1 className="greeting">
    Hello, world!
  </h1>
);

को प्रेषित किया जाता है:

const element = React.createElement(
  'h1',
  {className: 'greeting'},
  'Hello, world!'
);

... तो React(या जो भी नाम आप इसे कॉन्फ़िगरेशन में बदलते हैं) गुंजाइश में होना चाहिए । इसके अलावा, यह ठीक है।


1
बस इसे थोड़ा जोड़ने के लिए, यह वास्तव में यह देखने में मददगार है कि जेएसएक्स के साथ एक ट्रांसपिलर क्या कर रहा है। यहाँ एक उदाहरण है
निक

1
शुक्रिया @TJ क्राउडर और @ निक, वे बहुत अच्छे स्पष्टीकरण थे।
टिक 20
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.