Redux တွင် အခြေခံအတွေးအခေါ် နှစ်ခု
Redux စာကြည့်တိုက်ကို စတင်လေ့လာခြင်းမပြုမီ၊ ၎င်း၏ အခြေခံအတွေးအခေါ် နှစ်ခုကို အရင်မိတ်ဆက်ကြပါစို့။ ပထမအတွေးအခေါ်ဖြစ်သော အခြေအနေစီမံခန့်ခွဲမှု ဆိုင်ရာကို၊ React တွင် state အသုံးပြုထားသော သာမန် ကောင်တာတစ်ခုဖြင့် ဥပမာပြထားပါမည်။
function Counter() {
// State
const [count, setCount] = useState(0)
// Action:
function clickHandler() {
setCount(count + 1)
}
// View:
return (
<div>
<span>{count}</span>
<button onClick={clickHandler}>+</button>
</div>
)
}
ဤကုဒ်တွင် ကိန်းတစ်ခုအတွက် state ကိုမြင်ရပါသည်။
ထို variable count သည်
ကောင်တာအတွက် အမှန်တရားအရင်းအမြစ်ဖြစ်သည်။ ထို့နောက်
လုပ်ဆောင်ချက် (action) ကိုမြင်ရပါသည် - ၎င်းသည်
အသုံးပြုသူကလစ်နှိပ်သောအခါတွင်
state ကို အပ်ဒိတ်လုပ်ခိုင်းသော event ဖြစ်သည်။ နောက်ဆုံးတွင်၊
မြင်ကွင်း (view) ကိုမြင်ရပါသည်၊
၎င်းကို အသုံးပြု၍
အသုံးပြုသူ၏ အင်တာဖေ့စ်ကို ပြသပေးပါသည်။
ထို့ကြောင့် ပုံစံငယ်မှာ အတော်လေးရိုးရှင်းပါသည်။
ခလုတ်ကို နှိပ်လိုက်သည် - count (State) ကို
နှိပ်ခြင်း (Action) ဖြင့် ပြောင်းလဲသည်၊ ထို့ကြောင့်
မြင်ကွင်း (View) လည်း ပြောင်းလဲသွားသည် - ကျွန်ုပ်တို့၏ဖြစ်ရပ်တွင်
စကရင်ပေါ်ရှိ ဂဏန်းဖြစ်သည်။
သို့သော်၊ အကယ်၍ ကျွန်ုပ်တို့တွင် တူညီသော state တစ်ခုတည်းကို အသုံးပြုရန် လိုအပ်သော component များစွာရှိပါက အရာအားလုံးသည် ပိုမိုရှုပ်ထွေးလာပါလိမ့်မည်။ ဥပမာအားဖြင့် state ကို အထက်သို့ မြှင့်တင်ခြင်း ဖြင့် မိဘ component များဆီသို့ ပို့နိုင်သော်လည်း၊ ထိုကဲ့သို့သော ဖြေရှင်းချက်သည် ပြဿနာမှ အမြဲတမ်းကင်းလွတ်နိုင်မည် မဟုတ်ပါ။ Redux သည် ဤကိစ္စတွင် ကျွန်ုပ်တို့အား ဂလိုဘယ်အခြေအနေကို ထိန်းသိမ်းထားသည့် အက်ပ်လီကေးရှင်း၏ တစ်နေရာတည်းကို ဖန်တီးရန် နှင့် ထိုအခြေအနေကို အပ်ဒိတ်လုပ်သည့်အခါတွင် သတ်မှတ်ထားသော အပြုအမူပုံစံများကို ပြုလုပ်ရန် အဆိုပြုထားပါသည်။ ဤသည်မှာ ပထမအခြေခံအတွေးအခေါ် အတိအကျဖြစ်ပါသည် (!)။
ဒုတိယအတွေးအခေါ်မှာ ပြောင်းလဲ၍မရခြင်း၊ ဆိုလိုသည်မှာ ဒေတာများ မပြောင်းလဲခြင်းနှင့် ဆက်စပ်နေပါသည်။ သင်သည် JavaScript မှ မှတ်မိမည်ဖြစ်သည်၊ array များနှင့် object များကို ပြောင်းလဲနိုင်သည်ကို။ ဒေတာများကို တိုက်ရိုက်ပြောင်းလဲခြင်းသည် Redux တွင်၊ အခြား framework များတွင်ကဲ့သို့ပင် မကောင်းသော အလေ့အထအဖြစ် မှတ်ယူပြီး မမျှော်လင့်ထားသော အကျိုးဆက်များကို ဖြစ်စေနိုင်ပါသည်။ ထို့ကြောင့် Redux တွင် ကျွန်ုပ်တို့၏ မူလ object များနှင့် array များသည် ပြောင်းလဲ၍မရသော အဖြစ် ကျန်ရှိနေရပြီး၊ ၎င်းတို့၏ မိတ္တူများကိုသာ ပြောင်းလဲနိုင်ပါသည်။
Redux ၏ ပထမအခြေခံအတွေးအခေါ် မည်သို့ဖြစ်ကြောင်း ရှင်းပြပါ။
Redux ၏ ဒုတိယအခြေခံအတွေးအခေါ် မည်သို့ဖြစ်ကြောင်း ရှင်းပြပါ။