useMemo menyediakan Redux
P粉845862826
P粉845862826 2023-08-25 21:04:43
0
2
561

Saya baru menggunakan Redux dan saya ingin memaksimumkan prestasi aplikasi web saya.

Saya mempunyai keadaan dalam redux yang saya simpan dalam pembolehubah untuk dipaparkan kemudian.

Ini ialah kod:

constmetricsState = useSelector((state: MetricsStateObject) => state.MetricsState); const myMetrics =metricState.myMetrics;

Saya mendapati useMemo meningkatkan prestasi dengan tidak memaparkan semula jika data tidak berubah.

Jadi saya tertanya-tanya jika const myMetrics = useMemo(() =>metricsState.myMetrics, [metricsState.myMetrics]); ?

Terima kasih atas masa anda.

P粉845862826
P粉845862826

membalas semua (2)
P粉146080556

Biar saya beritahu anda kesimpulannya dahulu, ia langsung tidak berguna.

kenapa? Kerana proses metricsState.myMetrics只是一个 取值tidak melibatkan pengiraan yang mahal.

TetapiuseMemosendiri menggunakan jumlah pengiraan tertentu.

Jadi saya rasa ini pengoptimuman pramatang

    P粉726133917

    useMemoUntuk pengiraan mahal di mana anda tidak mahu menjalankan setiap render. Suka

    const some = useMemo(()=> megaBigArray.reduce((acc,i)=>acc*i,0), [megaBigArray])

    atau sesuatu seperti itu. Anda hanya menilai pembolehubah ini apabilamegaBigArrayberubah.

    Dalam kes anda, kod akan dijalankan pada setiap pemaparan, tetapiuseSelectorpemaparan hanya boleh dicetuskan apabila bahagian kedai yang anda pilih berubah. Jadi anda sepatutnya boleh bertahan dengan baik tanpanya.

      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!