기능구현은 완료해두었는데 코드리뷰를 받고 미쳐 신경쓰지 못한부분을 캐치하게 되었다. mutable
array 와 immutable
array 부분이다. 기존에 모두 삭제하는 기능을 splice()
함수를 사용해서 만들어두었는데 이 함수는 mutable
함수다. 그리하여 이 부분을 setState([])
빈배열만으로 결과값을 가져오게 되었다.
위와 같은 맥락으로 item별로 삭제하는 기능 또한 splice()
함수를 사용해서 구현했었다. 이를 filter()
을 사용해서 새로운 배열을 만들어내어 immutable한 구조로 수정했다.
제일 난감했던 부분은 제일 쉬울것 같은 toggle 기능이었다. array 안에 isCompleted
를 어떻게 새로운 배열로 클릭한 객체만 수정해서 배열로 넘길수 있을까.. 고민을 했다. 결과적으로 map()
에 조건문을 사용해서 immutable한 배열을 만들어냈다.
event delegate 개념에 대해서 보다 정확하게 이해할수있었다.
잘하는 사람들의 코드를 보면 닮고싶다 ㅎㅎ 비록 그 사람은 .. 아.. 망코드네 라고 생각하더라도 어떻게 생각하는지 코드에 습관이 묻어있기 때문에 나 또한 그런 프로들의 습관을 하나씩 닮아가고싶다.