[moin-review] 2021-09-28

김_리트리버·2021년 9월 28일
0

Facts

legacy code 에 js 로 되있던 redux 관련 파일들을 ts 로 변환함

초기에 생각한 것은 redux 의 상태와 액션의 payload 를 type 지정하는 것으로 계획했었다.

어느정도 작업을 진행한 후 혹시 redux 공식문서에서는 어떻게 할 까 찾아보았다.

근데 대략 비슷한 부분도 있었지만 내가한 방식보다 더 깔끔하고 가독성도 좋았다.

작업을 진행한게 다소 아깝끼는 했지만 역시 공식문서 쪽 방식으로 바꾸는 게 낫다고 생각하여

전부 공식문서 방식으로 변경했다.

Findings

타입스크립트에서 단순 string 으로 타입을 지정하지 않고 특정 문자열로 타입을 지정하고 싶을 경우

아래 처럼 typeof 키워드를 사용하면 특정문자열만을 타입으로 가질 수 있게 된다.

이렇게 하면 좋은점이 reducer 에서 action.type 기준으로 switch-case 문을 돌릴 때

action.type 조건에 따라 payload type 을 타입스크립트 통해서 확인할 수 있다.

const ACTION_TYPE = "ACTION_TYPE"

type Action = {type: typeof ACTION_TYPE, payload : ?? }

Feelings

무지성으로 남의 방식을 도입하는 것도 위험하지만 사람이 고민하는게 다 거기서 거기기 때문에

내가 고민하고, 어려움을 겪은 것은 누군가 미리 경험하고 해결했을 가능성이 높다.

이럴떈 굳이 고민하는데 시간을 날려먹는 것 보다 기존에 검증된 해결방법을 도입하는 게 시행착오도 줄이고 시간을 절약할 수 있다.

code 를 치기 전에 생각하고, 문제를 정의하고, 혹시 정의한 문제가 기존에 해결되었는지를 한번 검색한 이후에 code 를 작성해야 겠다 !

profile
web-developer

0개의 댓글