No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

脷ltima oportunidad para asegurar tu aprendizaje por 1 a帽o a precio especial

Antes: $249

Currency
$189/a帽o

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscr铆bete

Termina en:

0D
7H
21M
42S

Finalizaci贸n del Proyecto PlatziWordle

14/36
Recursos

Aportes 4

Preguntas 0

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Avanzamos aqu铆 unos 煤ltimos detalles de PlatziWordle.

En esta clase ya hemos integrado el observador聽deleteLetter聽(o聽removeLetter) enfocado a eliminar la 煤ltima letra de la palabra cuando el usuario presiona la tecla Borrar.

馃敆聽Puedes ver el c贸digo de ese observador aqu铆.

Otros cambios que realizamos:

  • Agregar una caja de mensajes al usuario.
  • Expandir las funciones del observador checkWord agregando colores de fondo para las letras de una palabra (gris, verde y amarillo).

Hola comunidad, estuve haciendo el proyecto a la par con el profesor. Pero estuve aplicando lo aprendido en los cursos de Ts, ello incluye POO. As铆 que si quieren darle un vistazo aqu铆 est谩 el repositorio.
Posdata: tiene errores al momento de perder, ganar o reiniciar el wordle. Ya que a煤n no he visto como se manejan los errores por desuscribir un observable.

https://proyecto-rxjs.web.app/
Dejo el link del proyecto hecho por m铆, pueden usarlo desde el celular tambi茅n. Gracias.

Mi funci贸n de checkWord:

// Posterior a validar la tecla enter
messageText.textContent = ''

// Informar las letras que faltan
if (userAnswers.length !== 5) {
	messageText.textContent = `隆Hacen falta ${5 - userAnswers.length} letras!`
	return;
}

// Si la respuesta es correcta, usar el Subject (no requiere iterar)
if(userAnswers.join('') === correctWord) {
	userWinOrLoose$.next();
	return;
}

// Si la respuesta no es correcta, verificar cada letra
const letterBox = [...letterRows[letterRowIndex].children]
userAnswers.forEach((value, index) => {
	const letterStatus = correctWord.indexOf(value)
	letterBox[index].classList.add(
`letter-${ ( letterStatus === -1 ? 'grey' : ( index === letterStatus ? 'green' : 'yellow') ) }`
	)
})

letterRowIndex++;
userAnswers = [];
letterColumnIndex = 0;

Queda una parte pendiente, los duplicados, en palabras como GALAS, marca la 2da A como amarillo aunque est茅 en la posici贸n correcta porque IndexOf devuelve el Index de la primera coincidencia, a煤n no lo resuelvo.