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

151
Visualizações
Debo mostrar un mensaje de error cada vez que un usuario ingresa una cadena que no coincide con ningún elemento en la matriz del usuario

Cuando uso else if para mostrar un mensaje de error, dice "nombre de usuario incorrecto" incluso cuando el nombre de usuario es correcto pero la contraseña es incorrecta. Excepto por el último nombre de usuario en la matriz "usuario".

Pero cuando elimino el else if no hace nada cuando un usuario ingresa el nombre de usuario incorrecto.

Creo que el ciclo for está creando ese problema. ¿Estoy usando el bucle equivocado para el propósito equivocado? ¿Qué tengo que hacer?

Enlace de Codesandbox https://codesandbox.io/s/nervous-moser-ybvwb3?file=/src/App.js:1066-1203

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

0

En primer lugar, no debería tener sus credenciales codificadas en el front-end de esa manera. Cualquiera podría simplemente leer el código y entrar.

Dicho esto, debe interrumpir el ciclo cuando se encuentra el nombre de usuario:

 if (usernameState === user[i]) { if (passwordState === pass[i]) { setLoginState(true); setMessageState("Login successful."); } else if (passwordState === "") { setMessageState("Enter password."); passwordinput.current.focus(); } else { setMessageState("Wrong password."); passwordinput.current.focus(); } break; }

De lo contrario, continuará procesando cada nombre de usuario ya que no se encontraron coincidencias. Realmente no usaría un bucle for para esto en absoluto. Primero debe verificar si hay una cadena vacía, luego buscar si el nombre de usuario está en su matriz, luego si lo está, verifique la contraseña. ¡Pero, de nuevo , no debería incrustar las credenciales en su código de front-end!

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