localStorage очищается после обновления - PullRequest
0 голосов
/ 05 сентября 2018

Почему-то каждый раз, когда я пытаюсь что-то сохранить в моем localStorage под атрибутом Reservas, если я обновлю страницу, данные в localStorage будут стерты.

Я уже использовал аналогичный метод для хранения данных из регистрационной формы в моем приложении (на какой-то другой странице), и оно отлично хранит его. Я не знаю, почему это не работает.

$(document).ready(function() {
  var userlog;
  var reserva = {}
  var reservas = []
  var dia_semana_input = document.getElementById('sel_dia')
  var refeicao_input = document.getElementById('sel_tipo')
  var prato_input = document.getElementById('sel_prato')

  var error_fix = {
    nome: "1",
    dia: "1",
    refeicao: "1",
    prato: "1"
  }
  reservas.push(error_fix)
  localStorage.setItem("Reservas", JSON.stringify(reservas));
  var utilizadores = JSON.parse(localStorage.getItem('utilizadores'))
  console.log(utilizadores)
  console.log(reservas)
  reservas = JSON.parse(localStorage.getItem('Reservas'))
  /* verificação para mais tarde utilizar nas reservas*/
  for (var i = 0; i < utilizadores.length; i++) {
    if (utilizadores[i].ativo == 1) {
      userlog = utilizadores[i].Username
    }
  }

  $("#btnReservar").click(function() {
    /*Stores object into array */
    /*which then stores into local storage(?)*/
    var dia_semana = dia_semana_input.value
    var refeicao = refeicao_input.value
    var prato = prato_input.value
    for (var i = 0; i < reservas.length; i++) {
      if (reservas[i].nome == userlog && reservas[i].dia == dia_semana) {
        console.log("primeiro")
        alert('Já existe uma reserva para esse dia!')
      } else {
        console.log("segundo")
        reserva.nome = userlog
        reserva.dia = dia_semana
        reserva.refeicao = refeicao
        reserva.prato = prato
        reservas.push(reserva)
        console.log(reservas)
      }
    }

    localStorage.setItem('Reservas', JSON.stringify(reservas))
  });
})

1 Ответ

0 голосов
/ 05 сентября 2018

У вас есть звонок на setItem с этим ключом. Это приведет к тому, что для него будут установлены значения, которые находятся в reservas. Возможно, вы хотите позвонить getItem?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...