Локальное хранилище Строки . Ваш код использует JSON для хранения массива (в виде строки), что является распространенным и подходящим способом сделать это. Чтобы удалить только один элемент из массива, вы:
- Получить JSON из локального хранилища
- Разобрать JSON в массив
- Удалить элемент из массива
- Получить JSON для обновленного массива
- Хранить в локальном хранилище
Обычно я делаю Шаги 1 и 2 по прибытии на страницу и сохраняю результат. Тогда я сделаю Шаг 3 с результатом, который у меня уже есть, и затем верну его в хранилище. Вы делаете что-то подобное с itemsArray
, так что-то вроде:
$("ul").on("click", "li", function() {
itemsArray = itemsArray.filter(entry => {
return /*...code to determine whether to keep `entry`, should
return true if `entry` isn't for this `li`, false if `entry`
IS for this `li` */;
});
$(this).remove();
localStorage.setItem("items", JSON.stringify(itemsArray));
});