Bonjour, Bonsoir

Je suis actuellement en train d'apprendre Redux et j'aurais une question , je suis en train de réaliser une todolist avec un api pour sa j’utilise axios pour mes requête.

j'ai une page home qui affiche tous mes todo pour ce faire je lance mon action dans componentdidmount() du coup mon store se met à jour grâce au reducer etc...

Arriver au moment ou je veux rajouter une todo je crée mon action

Action
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
export function addtodo(todo, history) {
  return function(dispatch) {
    axios
      .post(`${BASE_URL}/todos`, {
        name: todo.nom,
        content: todo.content
      })
      .then(respons => {
        dispatch({ type: AT_TODOS.CREATE_TODO, payload: respons.data }); // ICI
        history.push("/home");
      });
  };
}
Reducer

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
export default function reducerTodos(state = [], action) {
  switch (action.type) {
    case AT_TODOS.READ_ALL_TODO:
      return action.payload;
    case AT_TODOS.SEARCH_TODO:
      return action.payload;
    case AT_TODOS.CREATE_TODO:
      return [...state, action.payload];
    default:
      return state;
  }
}
Tout fonctionne correctement pas de problème, la question c'est pourquoi faire un dispatch dans l'action pour changer mon store alors que puisque je fais un history et je vais vers mon home qui met à jour le store en récupèrent tous les todos
je demande car dans tous les tuto que j'ai pu voire on utilise malgré tout le dispatch

Voilà merci désolé pour mon orthographe