(번역) Solid.js는 내가 항상 바랬던 React의 모습입니다
원문: https://typeofnan.dev/solid-js-feels-like-what-i-always-wanted-react-to-be/
Edit: 이 글을 읽어주셔서 감사합니다! Solid가 제가 생각하는 것처럼 유망하다고 느껴지신다면 Solid.js Github 저장소를 방문해서 “Star”를 주세요.
저는 약 3년 전부터 리액트를 사용해 전문적으로 일하기 시작했습니다. 이 시기는 우연하게도 리액트 훅스가 등장했을 때입니다. 저는 항상 투박한 느낌이 드는 클래스 컴포넌트가 대다수인 코드 베이스에서 작업하고 있었습니다.
자, 먼저 매초 증가하는 카운터 예시를 살펴보겠습니다.
자동으로 증가하는 카운터를 위해 많은 코드를 작성해야 합니다. 보일러 플레이트나 부가적인 코드가 많아질수록 오류 가능성은 높아지고 개발자의 경험은 악화될 것입니다.
훅은 꽤 깔끔하지만, 오류가 발생하기 쉽습니다
훅이 등장했을 때, 저는 큰 기대에 차 있었습니다. 제 카운터 코드를 다음과 같이 줄일 수 있었습니다.
하지만 이 코드는 문제가 있습니다. useEffect의 종속 배열에 count를 포함하지 않았기 때문에, useEffect 훅은 count
주변의 오래된 클로저(stale closure) 를 갖습니다. 의존 배열에 변수를 생략하는 것은 리액트 훅에서 흔히 하는 실수로, 입력하지 않았을 때 에러를 발생시키는 린트 규칙 또한 존재합니다.