useMemo fournit Redux
P粉845862826
P粉845862826 2023-08-25 21:04:43
0
2
560

Je suis nouveau sur Redux et j'aimerais maximiser les performances de mon application Web.

J'ai un état en redux que je stocke dans une variable pour l'afficher plus tard.

Voici le code :

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

J'ai constaté que useMemo améliore les performances en ne restituant pas si les données n'ont pas changé.

Je me demande donc si const myMetrics = useMemo(() =>metricsState.myMetrics, [metricsState.myMetrics]); ?

Merci pour votre temps.

P粉845862826
P粉845862826

répondre à tous (2)
P粉146080556

Laissez-moi d'abord vous dire la conclusion, c'est complètement inutile.

Pourquoi? Parce que le processus metricsState.myMetrics只是一个 取值n’implique pas de calculs coûteux.

MaisuseMemolui-même consomme une certaine quantité de calcul.

Je pense donc que c'est une optimisation prématurée

    P粉726133917

    useMemoPour les calculs coûteux où vous ne souhaitez pas exécuter chaque rendu. J'aime

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

    ou quelque chose comme ça. Vous n'évaluez cette variable que lorsquemegaBigArraychange.

    Dans votre cas, le code s'exécutera de toute façon à chaque rendu, maisuseSelectorle rendu ne devrait être déclenché que lorsque la section du magasin que vous avez sélectionnée change. Vous devriez donc pouvoir vous en passer très bien.

      Derniers téléchargements
      Plus>
      effets Web
      Code source du site Web
      Matériel du site Web
      Modèle frontal
      À propos de nous Clause de non-responsabilité Sitemap
      Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!