1
respuesta

[Duda] CAMBIAR EL ICONO POR DEFAULT POR UN CUADRO SIN EL CHECK Y CUANDO SE HAGA CLICK COLOCARLE EL CHECK EN AZUL

Hola compañeros

Estoy tratando de cambiar un poco el código para que cuando agregue una tarea solo me aparezca un cuadrado (ya lo descargué de font awesome), pero cuando pase el evento me cambie al check que estamos viendo en clase.

Cuando le añado las clases no pasa nada, alguién me puede ayudar?

const completeTask (event) => {
const element = element.target;
element.classList.add("fa-solid");
element.classList.add("fa-square-check");
element.classList.add("CompleteIcon");
element.classList.remove("fa-regular");
1 respuesta

Hola Andrea,

Gracias por compartir tu duda con nosotros. Parece que estás tratando de cambiar el icono por defecto por un cuadro sin el check, y cuando se haga clic en él, colocarle el check en azul.

En el código que compartiste, veo que estás tratando de agregar y quitar clases al elemento, pero no está funcionando como esperas. Una posible solución sería utilizar el método toggle en lugar de add y remove. El método toggle verifica si la clase existe en el elemento y, si existe, la quita; si no existe, la agrega.

Aquí tienes un ejemplo de cómo podrías implementarlo:

const completeTask = (event) => {
  const element = event.target;
  element.classList.toggle("fa-square-check");
  element.classList.toggle("CompleteIcon");
}

Con este código, cuando se haga clic en el elemento, se alternará entre tener las clases "fa-square-check" y "CompleteIcon". Esto debería cambiar el icono de un cuadro sin check a un cuadro con check en azul, y viceversa.

Espero que esto te ayude a resolver tu problema. Si tienes alguna otra pregunta, no dudes en preguntar. ¡Buena suerte con tu proyecto!

Espero haber ayudado y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios! :)