Skip to content

Commit 08f0fd4

Browse files
committed
refactor(useRect,useScroll): make observation simpler
1 parent e514b01 commit 08f0fd4

File tree

2 files changed

+16
-14
lines changed

2 files changed

+16
-14
lines changed

src/useRect.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,16 @@ export default function useRect(nodeRef) {
2323
}, [element])
2424

2525
React.useEffect(() => {
26-
let observer
27-
28-
if (element) {
29-
observer = observeRect(element, setRect)
26+
if (!element) {
27+
return
3028
}
3129

32-
observer && observer.observe()
30+
const observer = observeRect(element, setRect)
31+
32+
observer.observe()
3333

3434
return () => {
35-
observer && observer.unobserve()
35+
observer.unobserve()
3636
}
3737
}, [element])
3838

src/useScroll.js

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,22 +23,24 @@ export default function useScroll(nodeRef, onChange) {
2323
}, [element])
2424

2525
React.useEffect(() => {
26+
if (!element) {
27+
return
28+
}
29+
2630
const handler = e => {
2731
onChangeRef.current({
2832
scrollLeft: e.target.scrollLeft,
2933
scrollTop: e.target.scrollTop,
3034
})
3135
}
3236

33-
if (element) {
34-
element.addEventListener('scroll', handler, {
35-
capture: false,
36-
passive: true,
37-
})
37+
element.addEventListener('scroll', handler, {
38+
capture: false,
39+
passive: true,
40+
})
3841

39-
return () => {
40-
element.removeEventListener('scroll', handler)
41-
}
42+
return () => {
43+
element.removeEventListener('scroll', handler)
4244
}
4345
}, [element])
4446
}

0 commit comments

Comments
 (0)