web-dev-qa-db-fra.com

Les actions ne peuvent pas avoir une propriété "type" non définie. Avez-vous mal orthographié une constante?

Ma démo ne fonctionne pas bien. 

https://github.com/jiexishede/react-redux-demo01

L'erreur est: 

 enter image description here

Je ne sais pas comment résoudre cette erreur. L'erreur m'arrête plus de deux heures ..__ Je dois demander à quelqu'un de m'aider.

9
jiexishede

Votre action ci-dessous ne contient pas une propriété type qui est requise.

export function loadArticles() {
  return {
    types:[LOAD_ARTICLES, LOAD_ARTICLES_SUCCESS, LOAD_ARTICLES_ERROR],
    url:'./api/articles.json',
  };
}

Vous devez modifier le code ci-dessus afin que le créateur de votre action renvoie un type

export function loadArticles() {
  return {
    type: LOAD_ARTICLES,
    url:'./api/articles.json',
  };
}
23

Si vous utilisez une bibliothèque asynchrone Redux pour vos types, la syntaxe est types: [start_action, success_action, error_action]. Voir http://redux.js.org/docs/advanced/AsyncActions.html pour plus d'informations sur les actions asynchrones et synchrones en relation avec la syntaxe "type". Dans certains endroits, vous voudrez utiliser types: [required, optional, optional] pour la fonctionnalité asynchrone (ce qui signifie que vous écrirez types: required_action_name et que cela aura l'air bizarre, car il s'agit d'un type de mot-clé associé à un type singulier), mais vous utiliserez également type: only_action pour votre mot clé. actions synchrones. J'espère que cela t'aides.

1
Alison Stuart