【发布时间】:2020-12-24 09:11:19
【问题描述】:
我在 React Js 中有一个登录表单,它在单击按钮时提交用户详细信息。
我想要得到的是,当用户提交详细信息时,会调用用户数据的 API,该 API 返回用户列表。然后当代码获取用户列表时,我检查用户是否存在于列表中。
结果出来后我被卡住了。
我想 return true or false 到 setstate 的错误,但我得到了未定义。
这是运行的函数
let handleSubmit = (e) => {
e.preventDefault();
let result;
result = validateLogin(formDetails.name, formDetails.password);
console.log("------------", result); //getting undefined instead of True or false
}
验证登录:
let validateLogin = async (email, password) => {
const response = await axios.get('https://fakestoreapi.com/users');
if (response) {
const k = response.data.find(user => {
return user.email === email && user.password === password
})
if (k) {
return true
} else {
return false
}
}
}
【问题讨论】:
-
result = await validateLogin(formDetails.name, formDetails.password); -
试过但得到一个错误
Parsing error: 'await' is only allowed within async functions -
这说明了一切,对吧?让你的函数
async...
标签: javascript reactjs ajax redux axios