Bienvenido al curso

1

Conoce a tu profesor y todo lo que aprenderás sobre Redux

2

¿Qué conocimientos me recomiendan para tomar este curso?

Repaso React

3

¿Qué es React y cómo funciona?

4

Preparando nuestro entorno de trabajo

5

Creación de la app con React

6

Agregando funciones a la app con React

7

Stateful vs Stateless

8

Ciclo de vida de React

9

Manejando promesas

10

React Router DOM

Introducción a Redux

11

¿Qúe es Redux, cuándo usarlo y por qué?

Fases de Redux

12

Introducción: las fases de Redux

13

Store

14

Reducers

15

Conexión a un componente

16

Action Creators

17

Redux Thunk

18

Explicación teórica: ciclo completo de Redux

19

Práctica: ciclo completo de Redux

Fases Extra

20

Archivos Types

21

Try Catch

22

Escenarios asíncronos

23

Componente Spinner

24

Componente Fatal

25

Tabla como componente

Compartir información en Redux

26

Introducción Compartir información en Redux

27

Parámetros por URL

28

Compartir Reducer

29

Múltiples Reducers

30

Llamando a múltiples reducers en una acción

31

Uso del estado en la acción

32

Evitar segundas búsquedas

33

Inmutabilidad

34

Evitar sobrescritura

35

Validación compuesta

36

Validación de errores

37

Modificando respuesta de url

38

Estado con interacción

39

Mostrar componentes dinámicamente

40

Llamadas asincronas dinámicas

41

Props por herencia vs estado

42

Estado compartido

Métodos HTTP

43

Introducción a métodos HTTP

44

Nuevo ciclo Redux

45

Normalizar datos

46

Mapear Objetos

47

Componente para agregar tarea

48

Manejar inputs con Reducer

49

POST

50

Deshabilitando botón

51

Redireccionar

52

Reutilizar componentes

53

PUT

54

DELETE

55

Últimos detalles

Conclusión

56

Conocimientos adquiridos

57

Qué hacer a continuación

Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Curso de Redux por Bedu

Curso de Redux por Bedu

Rodolfo Saldivar

Rodolfo Saldivar

Redireccionar

51/57
Recursos

Aportes 16

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Yo en vez de usar un operador ternario lo hago de la siguiente forma:

{ (this.props.redirect) && <Redirect to='/tareas' /> }

Me gusto el video, ojala no empiece la Tercera guerra mundial y sea embano mi conocimientos adquiridos :v

Apuntes cortos y sencillos para todo el mundo y toda la familia xD

  1. En el tareasReducer inicializamos un atributo en el estado llamado regresar en false

  2. Cuando le den click al botón de guardar y cuando se ejecute el dispatch de tipo AGREGADA ese caso en el reducer seteamos el estado de regresar a true y en el caso de TRAER_TODAS seteamos a regresar a false

  3. Y en el componente de Guardar.js en el render evaluamos si regresar es true redirecciona a tareas/index.js

  4. Adicional seteamos en el caso de AGREGADA los valores de usuario_id y titulo a “” para que los inputs queden limpios

Conclusion: Cuando se le de click al boton de guardar para agregarle una tarea a un usuario, redireccionamos a las tareas.

También se pudo poner el Redirect al principio del render y antes del return

render() {
    if (this.props.return) return <Redirect to="/tasks" />;
    return (

si estas ocupando react-Router, también podes hacerlo de esta manera:: this.props.history.push(’/Personas’);

Creo que es mucho mas sencillo si utilizamos history que nos da React Router en los props de los componentes que enrutamos, así como nos da match.

Entonces utilice history de la siguiente manera.

En la función de Agregar simplemente le pase la nueva tarea y los props que tenía ese componente, recibí la nueva tarea y los props en el actionCreator, y de los props, utilice history para automaticamente apenas todo sea exitoso y se ejecute el dispatch , me dirija a la URL que se le indique, sin necesidad de agregar nada al estado del componente o al estado del Reducer que estamos utilizando. El código es


 // En el componente AddTasks  
   
    handleClick = () => {
    const { Id, Title, Add } = this.props;
    const NewTasks = {
      Id: Id,
      Title: Title,
      completed: false
    };
    Add(NewTasks, this.props);
  };

//En el Action Creator del componente Tasks

export const Add = (NewTasks, { history }) => async dispatch => {
  console.log(history);
  dispatch({ type: LOADING });
  try {
    const response = await Axios.post(
      "https://jsonplaceholder.typicode.com/todos",
      NewTasks
    );

    dispatch({
      type: ADD
    });

    history.push("/Task");
  } catch (error) {
    console.log(error.message);
    dispatch({
      type: ERROR,
      payload: error.message
    });
  }
};```

A estas alturas del 2022 , les recomiendo que usen el hook useNavigate de react-router-dom 😎.

Para los que les de el error de

Attempted import error: 'Redirect' is not exported from 'react-router-dom'

solo cambien el Redirect por Navigate

El ( Redirect ) y mucho mas se ve en curso de React Router
https://platzi.com/clases/react-router/

Excelente clase. 🙂

Aunque me genero un poco de problemas al escribir el codigo, conseguí completar la clase y entender bien 😄

Entendido

un buena clase

Aquí pueden encontrar la documentación de Redirect de react-router

Excelente clase

Que buena, sigamos!