Maison > interface Web > js tutoriel > Quand l'accès à l'état dans Redux Action Creators vous convient-il ?

Quand l'accès à l'état dans Redux Action Creators vous convient-il ?

Patricia Arquette
Libérer: 2024-10-21 18:45:29
original
328 Les gens l'ont consulté

When is State Access in Redux Action Creators Right for You?

Accès à l'état Redux dans les créateurs d'action : options et considérations

Dans Redux, l'accès à l'état du magasin global au sein des créateurs d'action peut être un sujet controversé. Ici, nous allons approfondir deux approches d'accès à l'état dans les créateurs d'action et explorer leurs avantages et leurs inconvénients.

Approche statique

import store from '../store';
export function someAction() {
  return {
    type: SOME_ACTION,
    items: store.getState().otherReducer.items,
  }
}
Copier après la connexion

Cette méthode importe directement le magasin, en s'appuyant sur le fait qu'il s'agit d'un singleton exporté depuis un module. Bien que fonctionnel, il est déconseillé en raison des limitations de rendu du serveur, où des magasins séparés sont souvent requis par requête.

Approche fonctionnelle

export function someAction() {
  return (dispatch, getState) => {
    const {items} = getState().otherReducer;

    dispatch(anotherAction(items));
  }
}
Copier après la connexion

Cette approche utilise le middleware Redux Thunk, une technique recommandée. Thunk permet aux créateurs d'actions de distribuer des fonctions au lieu de simples objets d'action, donnant ainsi accès aux fonctions de répartition et getState. Bien qu'il nécessite un middleware, il fonctionne de manière transparente pour le rendu côté client et côté serveur.

Considérations

  • Avis du créateur de Redux : Dan Abramov décourage l'accès à l'État en action créateurs, préconisant une utilisation sélective dans des scénarios spécifiques tels que les vérifications de données mises en cache ou les envois conditionnels.
  • Point de vue du responsable de Redux : Mark Erikson estime que l'accès à l'état dans thunks est acceptable et encouragé, reconnaissant son objectif.

En fin de compte, la meilleure approche dépend des exigences de chaque application. Idéalement, les actions devraient contenir un minimum d'informations ; cependant, il est acceptable d'utiliser getState dans les créateurs d'actions lorsque cela est nécessaire. Considérez les avantages et les inconvénients des deux approches et choisissez celle qui correspond le mieux à votre projet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal