Estoy tratando de configurar un autenticador para mi aplicación local. Descubrí que no puedo acceder a mi var fuera de mi método .then()
var authenticated = false; Auth.findtheUser({ }).then(user => { verified= user.name.verified; console.log("authenticated11", verified) } ).catch(err => console.log(err)); console.log("authenticated", verified)la salida para la salida autenticada11 es verdadera, pero no la del final. ¿Alguien podría ayudarme con esto? Nuevo en javascript.
No puede usar el resultado de una función asíncrona directamente después en JS. Consulte esta pregunta: Cómo devolver la respuesta de una llamada asíncrona
De acuerdo con lo que describiste en un comentario en esta respuesta. Se enfrenta a una excepción relacionada con el alcance.
var authenticated = false; Auth.findtheUser({ }).then(user => { verified= user.name.verified; console.log("authenticated11", verified) } ).catch(err => console.log(err)); // This will throw an exception because verified does not exist in this scope console.log("authenticated", verified)Deberías cambiar eso por esto
var authenticated = false; var verified; Auth.findtheUser({ }).then(user => { verified= user.name.verified; console.log("authenticated11", verified) } ).catch(err => console.log(err)); // This will throw an exception because verified does not exist in this scope console.log("authenticated", verified)