Thuta Learning
React
AdvancedWeb Developmentintermediate

React Actions & Optimistic UI

Reactသင်ခန်းစာ 23

ဒီခန်းပြီးရင် ဘာတတ်သွားမလဲ

  • React Actions & Optimistic UI ရဲ့ render, state နဲ့ interaction behavior ကိုရှင်းပြနိုင်ရန်
  • Loading, error, accessibility နဲ့ lifecycle cases စမ်းနိုင်ရန်
  • Maintainable, testable နဲ့ performant React code ရေးနိုင်ရန်

React Actions & Optimistic UI ကို pending, success, empty, error, retry, cancellation နဲ့ navigation recovery states ပါသော user flow အဖြစ်တည်ဆောက်ပါ။ Route သို့ async boundary တစ်ခုချင်းစီတွင် fallback နဲ့ error recovery ကိုရည်ရွယ်ချက်ရှိရှိထားပါ။

ပိုပြီးနားလည်ထားရမယ့် အချက်

React Actions & Optimistic UI ကို pending, success, empty, error, retry, cancellation နဲ့ navigation recovery states ပါသော user flow အဖြစ်တည်ဆောက်ပါ။ Route သို့ async boundary တစ်ခုချင်းစီတွင် fallback နဲ့ error recovery ကိုရည်ရွယ်ချက်ရှိရှိထားပါ။

လက်တွေ့မှာ ဘယ်လိုအသုံးချမလဲ

React Actions & Optimistic UI example ကို empty/loading/error states, keyboard-only interaction, slow network, rapid repeated events နဲ့ component unmount/remount cases ဖြင့်စမ်းပါ။ Browser console, React DevTools, tests နဲ့ profiler ကိုလိုအပ်သလိုအသုံးပြုပြီး behavior ကိုအတည်ပြုပါ။

ဒီသင်ခန်းစာပြီးရင်

jsx
import { startTransition, useOptimistic, useState } from 'react';

export default function LikeButton({ saveLike }) {
  const [liked, setLiked] = useState(false);
  const [optimisticLiked, setOptimisticLiked] = useOptimistic(liked);

  function toggle() {
    const next = !optimisticLiked;
    startTransition(async () => {
      setOptimisticLiked(next);
      const saved = await saveLike(next);
      setLiked(saved);
    });
  }
  return <button onClick={toggle}>{optimisticLiked ? 'Liked' : 'Like'}</button>;
}
You should see
Button က ချက်ချင်းတုံ့ပြန်ပြီး server အတည်ပြုထားသော value နှင့်နောက်ဆုံးညီသွားမည်။

ကိုယ်တိုင်စမ်းကြည့်ရန်

React Actions & Optimistic UI example ကို empty/loading/error states, keyboard-only interaction, slow network, rapid repeated events နဲ့ component unmount/remount cases ဖြင့်စမ်းပါ။ Browser console, React DevTools, tests နဲ့ profiler ကိုလိုအပ်သလိုအသုံးပြုပြီး behavior ကိုအတည်ပြုပါ။

State/Effect သတိပေးချက်

Happy path တစ်ခု render မှန်ရုံဖြင့် stale state, repeated effects, accessibility, loading နဲ့ error paths အားလုံးမှန်ပြီဟုယူဆခြင်း။

useOptimisticReact

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • Happy path တစ်ခု render မှန်ရုံဖြင့် stale state, repeated effects, accessibility, loading နဲ့ error paths အားလုံးမှန်ပြီဟုယူဆခြင်း။
  • Props/state ကိုတိုက်ရိုက်ပြောင်းခြင်း၊ derived state ထပ်သိမ်းခြင်း သို့ external system မရှိဘဲ useEffect ဖြင့် data flow ကိုရှုပ်ထွေးစေခြင်း။

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

React Actions & Optimistic UI example ကို empty/loading/error states, keyboard-only interaction, slow network, rapid repeated events နဲ့ component unmount/remount cases ဖြင့်စမ်းပါ။ Browser console, React DevTools, tests နဲ့ profiler ကိုလိုအပ်သလိုအသုံးပြုပြီး behavior ကိုအတည်ပြုပါ။

You'll know it worked when: Button က ချက်ချင်းတုံ့ပြန်ပြီး server အတည်ပြုထားသော value နှင့်နောက်ဆုံးညီသွားမည်။

React Actions & Optimistic UI | Thuta Learning