Introducción a JavaScript
¿Por qué aprender JavaScript?
¡Hola Mundo! en Mac
¡Hola Mundo! en Windows
Anatomía de una variable
Tipos de datos en JavaScript
Creación de strings
Operadores aritméticos
Conversión de tipos: Type Casting y Coerción
Conversión de tipos explícita e implícita
Estructuras de Control y Lógica
Operadores de comparación
Operadores lógicos
Ejecución condicional: if
Ejercicio: Adivina el número
Ejecución condicional: switch
Loop: for
Loop: for of
Loop: for in
Loop: while
Loop: do while
Funciones y This
Anatomía de una función
Funciones vs Métodos
Funciones puras e impuras
Arrow function y enlace léxico
Contextos de ejecución y scope chain
¿Qué es Closure?
Preguntas a Desarrolladores Senior: ¿Por qué aprender Desarrollo Web?
Manipulación de Arrays
Introducción a Arrays
Mutabilidad e inmutabilidad de Arrays
Modificación básica del final con push( ), pop( )
Iteración con map( ) y forEach( )
Filtrado y reducción con filter( ) y reduce( )
Búsqueda de elementos con find( ) y findIndex( )
Crear copias con slice( )
Spread operator: casos de uso
Programación Orientada a Objetos
Anatomía de un Objeto
Trabajando con objetos en JavaScript
Función constructora
¿Qué es una clase?
Prototipos y herencias
Herencia en la práctica
Prototipos en la práctica
this en JavaScript
Proyecto: Crea una red social
Proyecto: Crea una red social parte 2
Asincronía en JavaScript
¿Cómo funciona el JavaScript Engine?
Promesas en JavaScript
Usando Async y await en JavaScript
For await of
¿Cómo funciona la web?
¿Cómo funciona HTTP?
Método GET en JavaScript
Método POST en JavaScript
Método DELETE en JavaScript
Importancia del id en el método DELETE
ECMAScript 6 y tus siguientes pasos
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
¿Alguna vez te has preguntado cómo interactuar dinámicamente con los elementos de una página web, específicamente para eliminarlos de un servidor? Este artículo explora la implementación de una función de borrar usando JavaScript, que expande nuestras habilidades de desarrollo web al permitirnos eliminar elementos de manera eficiente.
Antes de proceder a implementar la funcionalidad de borrado, es esencial comprender el delegation pattern. Este patrón nos permite escuchar eventos de los elementos hijos mediante la asignación de un único evento al elemento padre. En lugar de agregar un evento a cada botón individualmente, este enfoque mejora el rendimiento asignándole el evento al contenedor principal de los elementos.
Para eliminar un elemento del servidor mediante una petición HTTP, primero necesitamos identificarlo de manera única. En nuestro HTML, cada elemento generalmente tiene un ID único. Al hacer clic en el botón de eliminar, debemos:
Aquí es donde el método closest
de JavaScript juega un papel crucial al encontrar el ancestro más cercano que coincide con el selector especificado:
document.addEventListener('click', function(event) {
if (event.target.tagName === 'BUTTON') { // Verifica si el click fue en un botón
let postID = event.target.closest('article').id;
console.log(postID); // Imprime el ID del artículo
}
});
Una vez tenemos el ID del elemento, podemos enviar una solicitud DELETE al servidor. Las solicitudes DELETE con frecuencia requieren que especifiquemos el recurso que deseamos borrar adjuntando su ID en la URL:
fetch(`http://tuservidor.com/posts/${postID}`, {
method: 'DELETE'
})
.then(response => {
if (response.ok) {
console.log('El post fue borrado');
}
})
.catch(error => console.error('Error:', error));
Cuando trabajamos con cualquier API, es fundamental revisar su documentación. Cada API tiene requerimientos específicos sobre cómo se deben estructurar las solicitudes y qué tipo de datos esperan recibir. En nuestro caso, nos aseguramos de que la URL y el método de solicitud sean correctos para que el servidor procese la eliminación del recurso correctamente.
Para verificar si nuestra implementación está funcionando, debemos revisar las herramientas de desarrollo del navegador. Observa las pestañas de Network para asegurar que el método DELETE
fue enviado correctamente y recibe un status 200 en respuesta, lo cual indica éxito:
DELETE
.Al aplicar estos conocimientos, no solo mejoramos la experiencia del usuario en la web, sino que también potenciamos nuestras habilidades en desarrollos complejos. A medida que internalices estos conceptos, estarás cada vez más cerca de dominar el desarrollo web interactivo y eficiente. ¡Sigue explorando y perfeccionando tus habilidades!
Aportes 9
Preguntas 0
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?