File tree Expand file tree Collapse file tree 2 files changed +28
-3
lines changed Expand file tree Collapse file tree 2 files changed +28
-3
lines changed Original file line number Diff line number Diff line change 1+ /**
2+ * Example: DependencyArray
3+ *
4+ * Explanation:
5+ * - Demonstrates effect behavior with different dependency arrays.
6+ * - [] → run once (on mount).
7+ * - [count] → run on mount + when count changes.
8+ * - No deps → run after every render.
9+ */
10+ import { useEffect , useState } from "react" ;
11+
12+ export default function DependencyArray ( ) {
13+ const [ count , setCount ] = useState ( 0 ) ;
14+
15+ useEffect ( ( ) => console . log ( "No deps: runs every render" ) ) ;
16+ useEffect ( ( ) => console . log ( "Empty deps: runs once" ) , [ ] ) ;
17+ useEffect ( ( ) => console . log ( "Deps: runs on count change →" , count ) , [ count ] ) ;
18+
19+ return (
20+ < div >
21+ < p > count = { count } </ p >
22+ < button onClick = { ( ) => setCount ( c => c + 1 ) } > +1</ button >
23+ </ div >
24+ ) ;
25+ }
Original file line number Diff line number Diff line change 88
99import BasicLog from "./examples/01_BasicLog" ;
1010import EffectCleanup from "./examples/02_EffectCleanup" ;
11- // import DependencyArray from "./examples/DependencyArray ";
11+ import DependencyArray from "./examples/03_DependencyArray " ;
1212// import WindowResizeListener from "./examples/WindowResizeListener";
1313// import FetchData from "./examples/FetchData";
1414// import MultipleEffects from "./examples/MultipleEffects";
@@ -47,9 +47,9 @@ export default function UseEffectShowcase() {
4747 < EffectCleanup />
4848 </ Demo >
4949
50- { /* <Demo title="3) DependencyArray — [] vs deps vs no deps">
50+ < Demo title = "3) DependencyArray — [] vs deps vs no deps" >
5151 < DependencyArray />
52- </Demo> */ }
52+ </ Demo >
5353
5454 { /* <Demo title="4) WindowResizeListener — global event subscription">
5555 <WindowResizeListener />
You can’t perform that action at this time.
0 commit comments