Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

232
Visualizações
¿Cuál es la forma correcta de generar rutas dinámicas para una aplicación de redes sociales usando Next.js?

Estoy creando una aplicación de redes sociales usando Next.js + Sanity.

En una aplicación de redes sociales, los datos cambian constantemente a medida que los usuarios agregan comentarios, me gusta, etc., por lo que tendría sentido usar getServerSideProps para SSR, ya que los datos que se muestran deben actualizarse en cada solicitud, ¿no?

Pero, ¿cómo puedo manejar las rutas dinámicas para, digamos, la página de perfil de un usuario, una publicación, etc.? Los documentos explican que para las rutas dinámicas debo usar getStaticPaths y getStaticProps pero eso no garantiza que los datos del perfil o publicación de un usuario se actualicen, ya que se generan de forma estática.

¿Cuál es la forma correcta de resolver esto?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Puede manejar rutas dinámicas agregando corchetes al archivo dentro de la carpeta de páginas.

por ejemplo, tiene una URL de localhost: 3000/ivanatias (ivanatias es su nombre de perfil)

en el directorio de páginas

 pages/ [userProfileId].js

Puede leer más sobre el enrutamiento dinámico

ahora context.params.userProfileId obtendrá los parámetros en su URL, que serían ivanatias

ahora puede realizar una consulta de búsqueda en la base de datos dentro de getServerSideProps y obtener los datos con userProfileId

 export async function getServerSideProps(context) { const userProfileId = context.params.userProfileId const fakeFetch = await fetch(`someurl.com/profile/${userProfileId}`); const data = await fakeFetch.json(); return { props: { data: data } } }

ahora puede usar los datos en su componente

por ejemplo

 export default function profile({ data }) { return (<h2>{data.name}</h2>) }

ahora con respecto a su pregunta si va a usar getStaticProps o getServerSideProps. depende de usted si cree que los datos no cambian con mucha frecuencia, entonces probablemente pueda usar ISG (regeneración estática incremental)

about 4 years ago · Juan Pablo Isaza Relatório

0

El uso getServerSideProps le da acceso al parámetro de contexto de esa función que tendrá una propiedad params que contiene su ruta dinámica. Entonces, por ejemplo, si desea tener un perfil de usuario en /user/{handle} , puede crear la siguiente estructura de directorios:

 pages/ user/ [handle].js

Luego, en su archivo [handle].js (sí, el nombre del archivo tiene corchetes), haría algo como esto:

 export default function UserHandlePage({ handle }) { return (<p>Handle: ${handle}</p>) } export async function getServerSideProps(context) { const userHandle = context.params.handle return { props: { handle: userHandle } } }

No necesita enumerar las rutas; cualquier visita a /user/... se ejecutará a través de esa función. Consulte también la documentación de Next Dynamic Routes para ver cómo manejar las rutas catch-all y otros parámetros.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda