我正在做一个学校项目,我需要在不制作真实数据库的情况下验证一些用户。我的问题是,当我将输入中输入的信息与存储在 JSON 中的信息进行比较时,它会为每个不匹配的选项弹出一个错误。我想要的是将多个错误减少为一个(以防用户名或密码与存储在 JSON 中的信息不匹配)。这是我的 JavaScript:
const form = document.querySelector('form');
form.addEventListener('submit', function(e){
e.preventDefault();
const emailInput = document.querySelector('#email').value;
const pwdInput = document.querySelector('#pwd').value;
const object = {
email: emailInput,
pwd: pwdInput
};
fetch('users.json')
.then(res => res.json())
.then(data => {
data.forEach(function(user) {
const userInfo = JSON.stringify(user);
const databaseInfo = JSON.stringify(object);
if(userInfo === databaseInfo) {
console.log('success');
} else {
console.log('err');
}
});
})
.catch(error => console.log('error'));
});
这是用 JSON 制作的假数据库:
[
{"email": "James", "pwd": "1111"},
{"email": "Peter", "pwd": "2222"},
{"email": "Josh", "pwd": "3333"}
]