suminute / todo-list-LV2

0 stars 0 forks source link

프로젝트 피드백 - 작성자: 오창영 튜터 #1

Open yeongsbook opened 1 year ago

yeongsbook commented 1 year ago

추가적으로 아래에 파일들에 대한 리뷰 남기겠습니다.

yeongsbook commented 1 year ago

Router.js

https://github.com/suminute/todo-list-LV2/blob/8b597ab912b12a971e9b520e3c7042d975f06bb7/src/shared/Router.js#L13

Detail 페이지에서 param.id를 사용하는 코드가 있습니다. /detail 로 접근시 param은 비어 있으므로 위 코드는 제외해주세요.

yeongsbook commented 1 year ago

modules/todos.js

https://github.com/suminute/todo-list-LV2/blob/8b597ab912b12a971e9b520e3c7042d975f06bb7/src/redux/modules/todos.js#L3-L6

액션타입의 상수는 일반적으로 대문자로 선언합니다. 그리고 덕스 패턴에서는 액션 타입을 정의할 때 다른 모듈과 이름이 중복되지 않게 하기 위해 접두사를 붙입니다.

to-be

const SAVE_TODO = "todos/SAVE_TODO";
const DELETE_TODO = "todos/DELETE_TODO";
const TOGGLE_STATUSTODO = "todos/TOGGLE_STATUSTODO";

https://github.com/suminute/todo-list-LV2/blob/8b597ab912b12a971e9b520e3c7042d975f06bb7/src/redux/modules/todos.js#L59-L62

저는 리듀서만 봤을 때에도 어느정도 이해가능한 코드가 좋다고 생각하는데요. 예를 들어 Delete_todo에서payload로 array를 받기보다는 id를 받아 filter를 사용하고 state를 업데이트 시켜주는 것이 좋다고 생각합니다. 이 방법이 무조건적인 정답은 아니니 참고만해주세요.

yeongsbook commented 1 year ago

Todolist.jsx

컴포넌트화 잘 하셨습니다!

https://github.com/suminute/todo-list-LV2/blob/8b597ab912b12a971e9b520e3c7042d975f06bb7/src/components/Todolist.jsx#L23

https://github.com/suminute/todo-list-LV2/blob/8b597ab912b12a971e9b520e3c7042d975f06bb7/src/components/Todolist.jsx#L44C50-L44C50

== 보다는 ===를 사용해주세요.