တုံ့ပြန် ကျူတိုရီရယ်

React Home React Intro React စတင်လိုက်ပါ။ ES6 ကို တုံ့ပြန်ပါ။ Render HTML ကို တုံ့ပြန်ပါ။ JSX ကို တုံ့ပြန်ပါ။ အစိတ်အပိုင်းများကို တုံ့ပြန်ပါ။ React Class React Props အဖြစ်အပျက်များကို တုံ့ပြန်ပါ။ အခြေအနေများကို တုံ့ပြန်ပါ။ တုံ့ပြန်မှုစာရင်းများ တုံ့ပြန်မှုပုံစံများ Router ကို တုံ့ပြန်ပါ။ တုံ့ပြန်မှတ်စု CSS Styling ကို တုံ့ပြန်ပါ။ Sass Styling ကို တုံ့ပြန်ပါ။

React Hooks

Hook ဆိုတာဘာလဲ။ ပြည်နယ်ကိုအသုံးပြုပါ။ အသုံးပြုမှုအကျိုးသက်ရောက်မှု အသုံးအနှုန်း အသုံးပြုရန် Ref Reducer ကိုအသုံးပြုပါ။ ဖုန်းခေါ်ဆိုမှုကို အသုံးပြုပါ။ Memo ကိုအသုံးပြုပါ။ စိတ်ကြိုက်ချိတ်

တုံ့ပြန်လေ့ကျင့်မှုများ

တုံ့ပြန်မေးခွန်း တုံ့ပြန်လေ့ကျင့်မှုများ တုံ့ပြန်လက်မှတ်

JSX ကို တုံ့ပြန်ပါ။


JSX ဆိုတာဘာလဲ။

JSX သည် JavaScript XML ကို ကိုယ်စားပြုသည်။

JSX သည် ကျွန်ုပ်တို့အား React တွင် HTML ရေးနိုင်စေပါသည်။

JSX သည် React တွင် HTML ရေးရန်နှင့် ထည့်ရန် ပိုမိုလွယ်ကူစေသည်။


Coding JSX

createElement()  JSX သည် ကျွန်ုပ်တို့အား JavaScript တွင် HTML ဒြပ်စင်များကို ရေးသားနိုင်ပြီး ၎င်းတို့ကို မည်သည့်နည်းလမ်း နှင့်/သို့မဟုတ် appendChild()နည်းလမ်းများ မပါဘဲ DOM တွင် ထားရှိနိုင်စေ ပါသည်။

JSX သည် HTML တဂ်များကို တုံ့ပြန်သည့်ဒြပ်စင်များအဖြစ်သို့ ပြောင်းလဲသည်။

သင်သည် JSX ကိုအသုံးပြုရန်မလိုအပ်သော်လည်း JSX သည် React အပလီကေးရှင်းများကိုရေးရန်ပိုမိုလွယ်ကူစေသည်။

ဤတွင် ဥပမာနှစ်ခုရှိသည်။ ပထမတစ်ခုက JSX ကိုအသုံးပြုပြီး ဒုတိယကတော့ မသုံးပါဘူး။

ဥပမာ ၁

JSX-

const myelement = <h1>I Love JSX!</h1>;

ReactDOM.render(myelement, document.getElementById('root'));

ဥပမာ ၂

JSX မပါဘဲ

const myelement = React.createElement('h1', {}, 'I do not use JSX!');

ReactDOM.render(myelement, document.getElementById('root'));

ပထမဥပမာတွင် သင်တွေ့မြင်ရသည့်အတိုင်း JSX သည် ကျွန်ုပ်တို့အား JavaScript ကုဒ်အတွင်း HTML တိုက်ရိုက်ရေးနိုင်စေပါသည်။

JSX သည် ES6 ကိုအခြေခံထားသော JavaScript ဘာသာစကား၏ တိုးချဲ့မှုတစ်ခုဖြစ်ပြီး runtime တွင် ပုံမှန် JavaScript သို့ ပြန်ဆိုထားသည်။


w3schools CERTIFIED . 2022

လက်မှတ်ရယူပါ။

React modules များကိုဖြည့်ပါ၊ လေ့ကျင့်ခန်းများလုပ်ပါ၊ စာမေးပွဲကိုဖြေဆိုပြီး w3schools မှ certified ဖြစ်လာပါ။

$95 စာရင်းသွင်းပါ။

JSX တွင် ဖော်ပြချက်များ

JSX ဖြင့် သင်သည် curly braces များအတွင်း အသုံးအနှုန်းများကို ရေးသားနိုင်သည် { }

စကားရပ်သည် React variable သို့မဟုတ် ပိုင်ဆိုင်မှု သို့မဟုတ် အခြားသော တရားဝင် JavaScript ထုတ်ဖော်ပြောဆိုမှု ဖြစ်နိုင်သည်။ JSX သည် စကားရပ်ကို လုပ်ဆောင်ပြီး ရလဒ်ကို ပြန်ပေးလိမ့်မည်-

ဥပမာ

အသုံးအနှုန်းကို လုပ်ဆောင် 5 + 5ပါ

const myelement = <h1>React is {5 + 5} times better with JSX</h1>;


HTML ၏ ကြီးမားသော ဘလောက်တစ်ခုကို ထည့်သွင်းခြင်း။

လိုင်းများစွာတွင် HTML ကိုရေးရန်၊ HTML ကို ကွင်းအတွင်း၌ ထည့်ပါ။

ဥပမာ

စာရင်းအကြောင်းအရာသုံးခုဖြင့် စာရင်းတစ်ခုဖန်တီးပါ-

const myelement = (
  <ul>
    <li>Apples</li>
    <li>Bananas</li>
    <li>Cherries</li>
  </ul>
);


ထိပ်တန်းအဆင့်ဒြပ်စင်တစ်ခု

HTML ကုဒ်ကို ထိပ်တန်းအဆင့်ဒြပ်စင် တစ်ခုတွင် ထည့်သွင်းထားရပါမည် ။

ဒါကြောင့် စာပိုဒ် နှစ် ပိုဒ်ရေးရတာ ကို နှစ်သက်တယ်ဆိုရင် ၊ အဲဒါတွေကို အစိတ်အပိုင်းတစ်ခုလို ပင်မဒြပ်စင်တစ်ခုထဲမှာ ထည့်ထားရပါမယ် div

ဥပမာ

DIV ဒြပ်စင်တစ်ခုအတွင်း စာပိုဒ်နှစ်ပိုဒ်ကို ခြုံပါ-

const myelement = (
  <div>
    <p>I am a paragraph.</p>
    <p>I am a paragraph too.</p>
  </div>
);

HTML မမှန်ပါက သို့မဟုတ် HTML သည် ပင်မဒြပ်စင်တစ်ခု လွတ်သွားပါက JSX သည် အမှားအယွင်းတစ်ခုကို လွှင့်ပစ်မည်ဖြစ်သည်။

တနည်းအားဖြင့် သင်သည် လိုင်းများစွာကို ခြုံရန် "အပိုင်းအစ" ကို သုံးနိုင်သည်။ ၎င်းသည် DOM သို့ မလိုအပ်ဘဲ အပို node များထည့်ခြင်းကို တားဆီးပါမည်။

အပိုင်းအစတစ်ခုသည် ဗလာ HTML တက်ဂ်နှင့်တူသည်- <></>

ဥပမာ

အပိုင်းတစ်ပိုင်းအတွင်း စာပိုဒ်နှစ်ခုကို ထုပ်ပိုးပါ-

const myelement = (
  <>
    <p>I am a paragraph.</p>
    <p>I am a paragraph too.</p>
  </>
);


အစိတ်အပိုင်းများကို ပိတ်ရပါမည်။

JSX သည် XML စည်းမျဉ်းများကို လိုက်နာသောကြောင့် HTML အစိတ်အပိုင်းများကို ကောင်းစွာပိတ်ရပါမည်။

ဥပမာ

အချည်းနှီးသောဒြပ်စင်များနှင့်အတူပိတ်ပါ။/>

const myelement = <input type="text" />;

HTML ကို မှန်ကန်စွာ မပိတ်ပါက JSX သည် အမှားအယွင်းတစ်ခု ဖြစ်သွားလိမ့်မည်။


Attribute class = className

ရည်ညွှန်းချက် သည် classHTML တွင် အသုံးများသော အရည်အချင်းတစ်ခုဖြစ်သော်လည်း JSX ကို JavaScript အဖြစ် ပြန်ဆိုထားပြီး classအဓိကစကားလုံးသည် JavaScript တွင် သီးသန့်စကားလုံးဖြစ်သောကြောင့်၊ သင်သည် ၎င်းကို JSX တွင် အသုံးပြုခွင့်မရှိပါ။

၎င်းအစား attribute ကိုသုံး classNameပါ။

JSX က ဒါကို အစားသုံးပြီး ဖြေရှင်း classNameခဲ့ပါတယ်။ JSX ကို ပြန်ဆိုသောအခါ၊ ၎င်းသည် className attribute များကို attribute အဖြစ် ဘာသာပြန် classပါသည်။

ဥပမာ

JSX တွင် classNameအစား attribute ကိုသုံးပါclass

const myelement = <h1 className="myclass">Hello World</h1>;


အခြေအနေများ - ရှင်းတမ်းများရှိရင်

React သည် ထုတ်ပြန်ချက်များ ကိုif ပံ့ပိုး ပေးသော်လည်း JSX တွင် မရှိပါ။

JSX တွင် conditional statements များကို အသုံးပြုနိုင်ရန်၊ သင်သည် JSX if ၏ အပြင်ဘက်တွင် ဖော်ပြချက်များကို ထည့်ထားသင့်သည်၊ သို့မဟုတ် ၎င်းအစား ternary expression ကိုသုံးနိုင်သည်-

ရွေးချယ်မှု 1-

ifJSX ကုဒ်၏ အပြင်ဘက်တွင် ဖော်ပြချက်များကို ရေးသား ပါ-

ဥပမာ

x10 ထက်နည်း ပါက "Hello" ဟုရေးပါ ၊ သို့မဟုတ် "Goodbye" ဟုရေးပါ-

const x = 5;
let text = "Goodbye";
if (x < 10) {
  text = "Hello";
}

const myelement = <h1>{text}</h1>;

ရွေးချယ်မှု 2-

အစား ternary expressions ကိုသုံးပါ-

ဥပမာ

x10 ထက်နည်း ပါက "Hello" ဟုရေးပါ ၊ သို့မဟုတ် "Goodbye" ဟုရေးပါ-

const x = 5;

const myelement = <h1>{(x) < 10 ? "Hello" : "Goodbye"}</h1>;

JSX တွင် JavaScript ထုတ်ဖော်ပြောဆိုမှုကို မြှုပ်နှံရန်အတွက် JavaScript ကို curly braces များဖြင့် ပတ်ထားရမည်ဖြစ်ကြောင်း သတိပြုပါ{}


လေ့ကျင့်ခန်းများဖြင့် သင့်ကိုယ်သင် စမ်းသပ်ပါ။

လေ့ကျင့်ခန်း

JSX ကို အသုံးမပြုဘဲ <p> ဒြပ်စင်တစ်ခုကို ဖန်တီးပါ။

const paragraph = React.createElement(, {}, 'This is a paragraph without using JSX!');

ReactDOM.render(paragraph, document.getElementById('root'));