Pasar al contenido principal
Alexys Lozada
José Luján
Manuel Rodriguez
José Luján
Luis Avilés
Álvaro Felipe
José Luján
Beto Quiroga
Jonathan MirCha
Jonathan MirCha
Álvaro Felipe
Alexys Lozada, Álvaro Felipe, Jonathan MirCha
Beto Quiroga
Alexys Lozada
Alexys Lozada
José Luján
Álvaro Felipe
Álvaro Felipe
Jonathan MirCha
Jonathan MirCha
Alexys Lozada, José Luján
Alexys Lozada, José Luján
Alexys Lozada, José Luján
Camilo Adobe
Álvaro Felipe
José Luján
Jonathan MirCha
Álvaro Felipe
Álvaro Felipe
Beto Quiroga, Alexys Lozada
Álvaro Felipe
Juan Villalvazo
Luis Avilés
Jonathan MirCha
Jonathan MirCha
Jonathan MirCha

Sistema de rutas con Adonis Framework 4

Sistema de rutas con Adonis Framework 4

Buen día comunidad, para mi es un gusto saludarles el día de hoy quiero hacerles una entrega más referente al Framework Adonis festejando de paso que ya esta en su versión 4 de manera estable.

Importante si no te sientes familiarizado con este tema, te recomiendo ver mi primer aporte en la sección de blogs para revisar como llegamos al proceso de instalación de esta maravillosa herramienta.

Las competencias que quiero ustedes adquieran hoy son las siguientes:

  1. Sistemas de rutas estáticas
  2. Parámetros en las rutas
  3. Parámetros opcionales en rutas

Si llegado a este punto no comprendes sobre esta herramienta te recomiendo buscar en el blog mi primer entrega de Adonis donde doy una introducción así como el proceso de instalación.

Bien es momento de comenzar, crea un nuevo proyecto y en la carpeta raíz entra a la siguiente ruta: start/routes.js y al final empieza con lo siguiente

  1. Sistemas de rutas estáticas

Como ya te diste cuenta Route accede al método GET que en este caso es el tipo de petición que le vamos a hacer al servidor; lo que finalmente nos dará solamente el retorno

Route.get('/edteam', () => 'Hola comunidad de EDTeam bienvenidos')

 

      2. Parámetros en Rutas

En el siguiente ejemplo estamos llegando un paso mas allá, ahora no solo devolvemos un simple texto sino que estamos adjuntándole un parámetro

Route.get('/edteam/:ceo', async ({ params }) => {
         return `Hola CEO ${params.ceo}`
})

Como ya pudiste notar hay una serie de cosas interesantes a explicar aquí:

  • async: Devuelve un nuevo objeto de una función asíncrona, esta función es a su vez un objeto de AsyncFunction
  • parámetros: Dentro del contexto del Framework Adonis dichos valores se pasan con la sintáxis de  :[valor]
  • Impresión de los valores: Como ya pudiste notar estamos haciendo dentro del return de la función la impresión de una cadena de texto y a su vez concatedandole un valor dinámico, pero en vez de usar el signo de + para eso utilizamos las template strings que me facilitan una sintáxis mas limpia y sacando el mismo resultado todo gracias al concepto de interpolación
  • Arrow functions: También parte del ya establecido nuevo estándar de JavaScript para sustituir en algunos casos el uso de funciones anónimas (tener presente que el scope o contexto de una arrow function es distinto al de una function tradicional)

 

    2. Parámetros opcionales en rutas

Con los ejemplos anteriores lo que acabamos de notar es como pasar un parámetro pero que si no lo cinlcuimos al momento de escribir la URL marcará NULL al no ser declarado; al igual que en Laravel indicarle que un parámetro es opcional es muy simple como puedes notar en el código siguiente:

Route.get('/edteam/:ceo?', async({ params }){
              if(params.ceo){
                  return `Hola mucho gusto ${params.ceo} CEO de EDTeam`
               }else{
                  return `Que alguien me presente al  CEO`
               }
})

¿Qué hice?

Bueno pues lo único es que si deseas que el parámetro sea opcional colocas un signo de interrogación que cierra al final de este mismo y al final para hacer un return con un condicional simple compruebo su existencia para devolver un mensaje personalizado según sea el caso.

Pero momento ahí no termina podemos llegar incluso mas allá siguiendo el patrón de arquitectura de software, moviendo la lógica de programación a un controlador para que a través de métodos controlemos las peticiones del usuario.

Saludos y a seguir nuestra ruta de aprendizaje

 

Mi Twitter es: https://twitter.com/AlfredoPazB

 

Recuerda que si quieres comprender mejor no sólo la sintáxis de de JavaScript si no también aprender este maravilloso lenguaje a nivel avanzado EDTeam tiene cursos geniales como:

  • JavaScript desde cero
  • JavaScript Avanzado "Paradigmas de programación" con mi conacional el buen Jon Mircha

Suscríbete al blog de EDteam

Ingresa tu correo electrónico para recibir nuestro boletín semanal