'ForwardRef'를 사용하는 대신 REF를 소품으로 통과 할 수있는 React 19의 새로운 기능은 몇 가지 주요 방식으로 개발 효율성을 향상시킬 수 있습니다.
더 간단하고 직관적 인 API
일반 소품으로서 Ref를 통과하는 것은`Forc 소품을 통해 구성 요소 트리 아래에 데이터를 전달하는 핵심 반응 원리와 더 잘 맞습니다. 이로 인해 코드는 특히 초보자에게 더 쉽게 이해하고 추론 할 수 있습니다.
보일러 플레이트 감소
`Forc 이것은 일부 보일러 플레이트 코드를 추가합니다. 소품으로 Ref를 직접 전달하면이 추가 코드가 제거됩니다.
더 나은 캡슐화
`Forc REF를 소품으로 전달하면 자식 구성 요소가 심판을 알지 못하도록하여 캡슐화를 개선 할 수 있습니다.
더 쉬운 리팩토링
구성 요소 트리를 리팩터링하고 ref 첨부 파일 지점을 변경 해야하는 경우 여러 장소에서 'ForwardRef'호출을 업데이트하지 않고 소품 이름을 업데이트하는 것이 간단합니다. 이로 인해 코드베이스를 더욱 유지 관리 할 수 있습니다.
클래스 구성 요소와 일치합니다
클래스 구성 요소에서 Refs는 특수`Forwerf '메커니즘을 통해가 아니라`ref'prop를 사용하여 첨부됩니다. 함수 구성 요소의 소품으로서 Ref를 허용하면 클래스 및 기능 구성 요소에서보다 일관된 API를 제공합니다.
쉬운 유형 확인
TypeScript를 사용하는 경우`Forc 소품 유형은`ref '객체에서 직접 추론 할 수 있습니다.
요약하면, 소품 기능으로서의 새로운 Refs는 RECT API를보다 직관적으로 만들고, 보일러 플레이트를 줄이고, 캡슐화를 향상 시키며, 코드베이스를 더욱 관리하기 쉽게 만듭니다.
인용 :[1] https://www.copycat.dev/blog/react-forwardref/
[2] https://stackoverflow.com/questions/58578570/value-of-using-react-forwardref-vs-custom-ref-prop
[3] https://legacy.reactjs.org/docs/forwarding-refs.html
[4] https://www.reddit.com/r/reactjs/comments/1asgpy9/ref_as_a_a_prop_advance_beginner_question/
[5] https://blog.logrocket.com/why-should-use-refs-sparely-in-production/
[6] https://react.dev/blog/2024/04/25/react-19-upgrade-guide
[7] https://dev.to/dalcio/react-performance-usestate-retucer-reetical-summary-1bok
[8] https://www.freecodecamp.org/news/new-react-19-features/