최적의 성능을 위해 화살표 함수를 피하고 JSX 소품에 바인딩
React의 린트 도구는 잠재적인 문제를 강조하여 코드 관행을 향상시키는 것을 목표로 합니다. 일반적인 오류 메시지 중 하나는 "JSX props는 화살표 기능을 사용하면 안 됩니다."입니다. 이는 화살표 기능을 사용하거나 JSX props 내에서 바인딩하는 것이 해로운 효과를 지적합니다.
애로우 함수와 바인딩이 성능을 저해하는 이유
화살표 기능을 통합하거나 JSX props에 바인딩하면 성능 영향:
인라인 핸들러가 재렌더링에 미치는 영향
고려하세요 다음 예는 다음과 같습니다.
예 1: 인라인이 없는 PureComponent Handler
class Button extends React.PureComponent { render() { const { onClick } = this.props; console.log('render button'); return ; } }
이 코드에서 Button 구성 요소는 PureComponent에 대해 예상한 대로 props가 변경될 때만 다시 렌더링됩니다.
예 2: 인라인 핸들러가 있는 PureComponent
const Button = (props) => { console.log('render button'); return ; };
인라인 화살표 기능으로 인해 이제 구성 요소 상태가 변경되지 않은 경우에도 Button이 매번 다시 렌더링됩니다. 이러한 불필요한 다시 렌더링은 성능에 심각한 영향을 미칠 수 있습니다.
모범 사례
이러한 성능 문제를 방지하려면 다음 모범 사례를 따르는 것이 좋습니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3