@Tupic123

Как правильно хранить и возвращать данные в localstorage?

Добрый день, подскажите, по клику добавляю с массив объектов дополнительный объект и сохраняю в localStorage, после перезагрузки все объекты на месте, но стоит начать на новой сессии добавлять объекты, как все перезаписывается
Как решить такую проблему?
let form = document.getElementById('submit_task'),
	input = document.getElementById('task_name'),
	btn = document.getElementById('save_task');



let task_list = []


btn.addEventListener('click', function(e){
	e.preventDefault();
	if(input.value != '') {
		let inputValue = input.value;
		let newTask = {
			task_name: inputValue,
			task_status: true
		}
		task_list.push(newTask)
		let lastTaskHtml = document.createElement(
			`span`
		)
		lastTaskHtml.innerHTML = newTask.task_name
		let task_ul = document.getElementById('task_list')
		task_ul.appendChild(lastTaskHtml)
		let serialObj = JSON.stringify(task_list); //сериализуем его
		localStorage.setItem('key', serialObj); //запишем его в хранилище по ключу "myKey"


		return returnObj


	}

})
let returnObj = JSON.parse(localStorage.getItem('key'));
returnObj.forEach(function(element) {
	let lastTaskS = document.createElement(
		`span`
	)
	lastTaskS.innerHTML = element.task_name
	let task_ulS = document.getElementById('task_list')
	task_ulS.appendChild(lastTaskS)
}  )
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
just_konstantin
@just_konstantin
Если необходимо сохранить предыдущее значение, то перед сохранением нужно вытащить старые данные, сделать сериализацию, смержить с новыми данными и сохранить
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы