Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

172
Vistas
El formulario de inicio de sesión usa ReactJS (sin base de datos) con map ()?

Quiero crear un formulario de inicio de sesión con datos de matriz:

 const users = [ { username: 'admin1', password: '12345678' }, { username:'admin2', password:'012345678' } ];

y Login.js se parece a esto:

 import React from 'react'; class Login extends React.Component { constructor(props) { super(props); this.state = { userName: "", password: "" }; } changeInputValue(e) { this.setState({ [e.target.name]: e.target.value }); } validationForm() { let returnData = { error : false, msg: '' } const {password} = this.state //Check password if(password.length < 8) { returnData = { error: true, msg: 'Password must be more than 8 characters' } } return returnData; } submitForm(e) { e.preventDefault(); const validation = this.validationForm() var username = e.target.elements.username.value; var password = e.target.elements.password.value; if (validation.error) { alert(validation.msg) }else if(username === 'admin1' && password === '12345678') { alert("Login successful"); }else { alert("Wrong password or username"); } } render() { return ( <div className="container" style={{ paddingTop: "5%" }}> <form onSubmit={e => { this.submitForm(e); }} > <div className="form-group"> <input type="text" className="form-control" name="username" placeholder="Username" onChange={e => this.changeInputValue(e)} /> </div> <div className="form-group"> <input type="password" className="form-control" name="password" placeholder="Password" onChange={e => this.changeInputValue(e)} /> </div> <button value="submit" className="btn btn-primary" onClick={this.postDetails}> Submit </button> </form> </div> ); } } export default Login;

Entonces, el código anterior solo verifica si los campos de nombre de usuario y contraseña ingresados en el formulario coinciden con el nombre y la contraseña del registro único en la matriz de objetos de User.js. El código anterior funciona bien. No sé cómo verificar el nombre de usuario y la contraseña de la matriz pasada.

Quiero usar el mapa () para verificar el nombre de usuario y la contraseña. Por favor, muestre un ejemplo de cómo se hace. Lo siento, soy nuevo en ReactJS, así que estoy un poco confundido, espero que puedas ayudar. Gracias

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Puede usar el método .some() .

documento: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some

Algo como esto

 var username = e.target.elements.username.value; var password = e.target.elements.password.value; if(users.some((elem) => elem.username === username && elem.password === password)) { // when authentication is valid } else { // not a valid username / password }
about 4 years ago · Juan Pablo Isaza Denunciar

0

Puedes usar buscar

 const user = users.find(user => (user.username === username && user.password === password)) if(user){ //correct user } if(!user) { //incorrect }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda