Всем привет.
Пишу приложения на ангуларе с формой для регистрации. Данные все хранятся в localStorage. У меня не получается сделать проверку на имя пользователя, т.е. если такой есть, то выводим сообщения, если нет, то записываем в массив. Подскажите пожалуйста, как проверку сделать и что бы записывало в localStarage нормально. Ни то сейчас записывает третьим объектом, а при следующей регистрации меняет этот объект в место того, что бы записать еще один.
Вот код:
registration(event) {
event.preventDefault();
this.localStor();
let newUserName = event.target.form.elements[0].value,
newUserPass = event.target.form.elements[1].value;
// берем значения с локал и сразу преобразуем
let meaningsLocalS = JSON.parse(localStorage.getItem('user'));
for (var prop in meaningsLocalS) {
if (newUserName != prop.userName) {
let newUser = {
userName: newUserName,
userPass: newUserPass
}
meaningsLocalS.push(newUser);
let newJson = JSON.stringify(meaningsLocalS);
localStorage.setItem('user', newJson);
this.user.setUserLoggedIn();
this.router.navigate(['/post']);
break;
} else {
alert('Пользователь с таким логином существует.');
break;
}
}
}
localStor() {
// Не понял как записать сразу в локал
const locSt = [
{
userName: "admin",
userPass: "admin"
},
{
userName: "marusya",
userPass: "123"
}
];
let lc = JSON.stringify(locSt);
localStorage.setItem('user', lc);
}