Performance: Reusable components
MEDIUM IMPACT
Reusable components affect rendering speed and bundle size by reducing duplicated code and minimizing unnecessary DOM updates.
function Button({ label, onClick }) { return <button onClick={onClick}>{label}</button>; } function App() { return ( <> <Button label="Click 1" onClick={() => alert('Clicked 1')} /> <Button label="Click 2" onClick={() => alert('Clicked 2')} /> <Button label="Click 3" onClick={() => alert('Clicked 3')} /> </> ); }
function App() { return ( <> <button onClick={() => alert('Clicked 1')}>Click 1</button> <button onClick={() => alert('Clicked 2')}>Click 2</button> <button onClick={() => alert('Clicked 3')}>Click 3</button> </> ); }
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Duplicated inline elements | Many unique nodes | Multiple reflows on updates | Higher paint cost due to many nodes | [X] Bad |
| Reusable components | Fewer unique nodes, reused | Single or fewer reflows | Lower paint cost due to reuse | [OK] Good |