@Fillin54

Как исправить Uncaught TypeError: Cannot read property 'remove' of null?

При создании TODO List'а столкнулся с такой ошибкой - Uncaught TypeError: Cannot read property 'remove' of null. У меня работает добавление заметок, они получают уникальный ID, но когда я пытаюсь удалить заметку выскакивает ошибка. Код посмотреть полностью можно здесь - JSFiddle - https://jsfiddle.net/Fillin/j1xqpmwh/
  • Вопрос задан
  • 70 просмотров
Решения вопроса 1
MrDecoy
@MrDecoy Куратор тега JavaScript
Верставший фронтендер
Мой хрустальный шар подсказывает, что ошибка у Вас на строке
item.remove();

В таком случае, из текста ошибки не сложно догадаться, что
document.querySelector(`[data-key='${todo.id}']`); - возвращает null. То есть в DOM нет такого элемента.

А происходит так потому что Вы в обработчике клика смотрите на родительский элемент кнопки, коим является форма, у которой нет data-key.
const item = event.target.parentElement.dataset.key; // undefined

А нужно смотреть выше на div.
что-то вроде:
const item = event.target.closest('[data-key]').dataset.key;

Профит.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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