inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

문법 공부 다음엔, 자바스크립트 프로젝트 101

To Do List (응용)

To Do LIst(응용) 질문

해결된 질문

361

뭉치

작성한 질문수 2

0

 안녕하세요! 강의보다가 질문이 생겨 작성합니다.

To Do LIst(응용) 중 삭제 기능이 있는 코드인데요.

const delItem = (event) => {
  const target = event.target.parentElement;

  todos = todos.filter((todo) => todo.id !== parseInt(target.id));
  save();

  //remove 메소드
  target.remove();
};

이 코드에서 아래 코드만 삭제해보면 html 구조내 li 만 삭제되고 localStorage에선 삭제가 안되더라구요!

그 이유가 todo의 아이디와 삭제 버튼이 눌린 타겟의 아이디가 같지않으면 todos 배열에 담고, 저장하기 때문이지요?

(즉, 같은 아이디라면 todos 배열에 저장이 되지않음)


todos = todos.filter((todo) => todo.id !== parseInt(target.id));
save();

javascript

답변 1

0

이룸코딩

뭉치님 안녕하세요!

네 이해하신 바가 맞습니다!
HTML 내에서는 target.remove() 때문에 사라지게 됩니다.
이 부분은 여기를 참고해주세요!

로컬스토리지에는 todos를 저장하는 방식이고,
말씀하신 것처럼 아이디를 기준으로 필터링을 해줌으로써
삭제하고자 하는 요소를 '뺀' 새로운 배열을 만들고 저장하게 됩니다.

0

뭉치

답변 감사합니다~!

Context API vs Zustand 그리고 Auth

0

18

2

순수 함수 / 순수 컴포넌트

0

15

1

css box-sizing 관련 질문

0

28

2

스니펫이 이상해요

0

26

2

Editor Component의 최적화 불가능 이슈

0

37

2

useCallback ⊂ useMemo

0

33

2

깃허브 저장소를 어디에 첨부하셨나요?

1

37

1

nestjs 강의는 없나요??

1

36

2

스타터 저장소

1

39

1

What is Rxjs

0

26

1

라이브러리 설치 질문

0

33

2

linter 질문

0

39

2

쌤 에러가 계속 나요ㅠㅠ

0

414

2

bmi 계산기 질문있습니다.

0

158

2

재밌게 잘 듣고있어요~

0

311

1

bmi 계산기 css가 적용이 안됩니다

0

425

1

trello-app에서 질문 있습니다

0

418

1

아 네~다시 질문드립니다.

0

274

1

해결되지않는 부분이 있어서 질문드려요

0

345

3

로컬스토리지에만 저장이 되는건?

0

341

1

MIME type Error / video.paused

0

497

1

인터넷 사용여부

0

317

1

vscode 설정

0

434

1

모달강의 관련 CSS 파일

0

434

1