Conceptos básicos de Next.js 14

1

¿Qué es Next.js y por qué aprenderlo si quieres ser frontend senior?

2

Arquitectura de un proyecto de Next.js

3

Herramientas y stack utilizado en el curso

4

Cómo crear rutas en Next.js

5

Cómo crear Layout en Next.js

6

Cómo funciona la navegación en Next.js

7

Manejo de parámetros en rutas en Next.js

8

React Server Components en Next.js: notación "use Client"

9

Creación de arquitectura de landing page en Next.js

Quiz: Conceptos básicos de Next.js 14

Manejo de estilos y estáticos en Next.js 14

10

CSS Modules en Next.js 13

11

Uso de Sass en Next.js

12

Cómo utilizar estilos globales en Next.js

13

Cómo agregar archivos estáticos en Next.js

14

Manejo y optimización de imágenes con Next Image

15

Optimización del componente image en Next.js

16

Optimización de fuentes con Next.js

17

Creando estilos dinámicos aplicando condicionales en Next.js

Quiz: Manejo de estilos y estáticos en Next.js 14

Data Fetching en Next.js

18

Creación de tienda de Shopify para un proyecto en Next.js

19

Manejo de variables de entorno en Next.js

20

Cómo obtener información de una API con Next.js

21

Manejo de estado de carga con el archivo loading.tsx

22

Route Grouping en Next.js

23

Manejo de errores en la UI con el archivo error.tsx

Quiz: Data Fetching en Next.js

Next.js Avanzado

24

Implementando páginas de Not Found y error global

25

Cómo impactan los React Server Components en un proyecto en Next.js

26

Cuándo utilizar layout o template en Next.js

27

Arquitectura profesional para data fetching en un proyecto en Next.js

28

Next.js para backend: manejando rutas con archivos Route Handlers

29

Proyecto: implementando la página de tienda

30

Patrones de data fetching en Next.js

31

Proyecto: filtrando categorías de productos

32

Data fetching de parámetros en el servidor y cliente

33

Proyecto: página de producto y arreglos en el sitio

34

Cómo funciona el Fetch y el Caché de Next.js

35

Revalidando cache con revalidateTag y revalidatePath en Next.js

36

Cómo hacer redirects en Next.js

37

Proyecto: HTML dinámico en la descripción del producto

38

Mejorando SEO de una página en Next.js

Quiz: Next.js Avanzado

Autenticación y autorización

39

Manejando autenticación y autorización con Storefront APÏ de Shopify

40

Server Actions en Next.js

41

Proyecto: proceso de Sign-Up con GraphQL

42

Manejo de cookies para colocar un token de acceso de un proyecto en Next.js

43

Cómo implementar un flujo de login en un proyecto en Next.js

44

Validando token de acceso de usuario en un proyecto en Next.js

45

Proyecto: implementando el carrito de compras

46

Manejo de estado global con zustand en Next.js

47

Proyecto: agregando items al carrito de compras

48

Cómo integrar el checkout de Shopify a un proyecto en Next.js

49

Implementar middleware en proyecto en Next.js para protección de rutas

Inteligencia Artificial

50

Creando componente de chatbot de ventas con la SDK IA de Vercel

51

Implementación de un bot de ventas en una app Next.js

Performance

52

Optimización de carga con parallel routing en Next.js

53

Análisis de bundle para Next.js 14

Quiz: Performance

Frontend Ops

54

Edge runtime

55

Despliegue de un proyecto Next.js en Vercel

56

Mejores prácticas en arquitecturas empresariales

Quiz: Frontend Ops

Next.js es parte de tu nuevo stack

57

¡Has creado un proyecto en Next.js!

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de Next.js 14

Curso de Next.js 14

Enrique Devars

Enrique Devars

Cómo hacer redirects en Next.js

36/57
Recursos

¿Qué son los redirects y cuándo se utilizan en Next.js?

En el desarrollo web con Next.js, los redirects juegan un papel crucial al manejar la navegación en tu aplicación. Un redirect, o redirección, permite enviar al usuario desde una URL solicitada hacia otra URL, lo cual es especialmente útil en situaciones como:

  • Restringir el acceso a ciertas páginas (p. ej., áreas administrativas para usuarios no autorizados).
  • Presentar alternativas cuando no se cumplen las condiciones necesarias en una página.
  • Redirigir a una página predeterminada (como la tienda principal o una página 404).

Estos redirects pueden implementarse tanto en componentes del servidor como en componentes del cliente.

¿Cómo se implementan los redirects en los componentes del servidor?

Los componets del servidor son ideales para manejar la lógica de negocio desde el lado del servidor antes de renderizar la página. Para implementar un redirect en un componente del servidor en Next.js, sigue estos pasos:

  1. Importar la función redirect: Necesitarás importar la función redirect desde next/navigation.
  2. Crear un condicional para el redirect: Antes de renderizar, verifica si se cumple una condición. Si no se cumple, utiliza el redirect para enviar al usuario a la URL deseada.

Ejemplo de redirect en un componente del servidor

import { redirect } from 'next/navigation';

// Ejemplo en un archivo de página del servidor
export default function Page() {
    if (!productoID) {
        redirect('/tienda');
    }
    // Resto del código
}

En el ejemplo anterior, si productoID no está presente, el usuario es redirigido a la ruta /tienda.

¿Cómo se realizan los redirects en componentes del cliente?

Los componentes del cliente permiten respuestas dinámicas en el lado del cliente después de que la página haya sido montada. Utilizar hooks como useRouter es clave para redirecciones en este ámbito:

  1. Importar y configurar useRouter: Importa el hook useRouter desde next/navigation.
  2. Implementar la lógica de redirección: Una vez que el componente se ha montado, puedes verificar las condiciones y, de ser necesario, redirigir al usuario.

Ejemplo de redirect en un componente del cliente

'use client'

import { useRouter } from 'next/navigation';

export default function ProductView() {
    const router = useRouter();

    useEffect(() => {
        if (!producto) {
            router.push('/landing');
        }
    }, [producto]);

    // Resto del código
}

Este código muestra cómo redirigir al usuario a /landing si no se encuentra un producto al montar el componente.

¿Cómo corregir errores comunes al configurar redirects?

En algunos casos, como al trabajar con diferentes versiones de Next.js, podrías enfrentar errores como "Next router was not mounted". Para evitarlos, asegúrate de:

  • Importar los hooks y funciones desde el módulo correcto correspondiente a tu versión de Next.js. Next.js 13 y versiones posteriores utilizan los módulos de next/navigation.
  • Manejar posibles errores que surgen al intentar acceder a propiedades inexistentes. Implementa controles condicionales para mejorar la experiencia del usuario y evitar log de errores.

Consejos prácticos

  • Desarrollo + Debugging: Mantén siempre un entorno de desarrollo supervisado para detectar y solucionar errores rápidamente.
  • Condiciones dinámicas: Aprovecha los hooks de React para gestionar cambios en estado y props que podrían influir en la redirección.

Con estos enfoques y prácticas recomendadas, estarás bien equipado para implementar redirects efectivos en tu aplicación Next.js. ¡Sigue explorando y aprendiendo para optimizar tus proyectos de desarrollo web!

Aportes 4

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

24/04/2024
9/08/2024
17/07/2024
Fri 28 Jun 2024