我在 React 中有一个带有 Scroll 事件的父组件。 当我使用 useState 并滚动页面时,子组件会触发。 子函数被触发。为什么 ?糟糕的表现:(
function Parent() {
const [scrollTop, setScrollTop] = useState(0);
const onScroll = () => {
setScrollTop(window.pageYOffset || document.documentElement.scrollTop);
};
useEffect(() => {
onScroll();
});
useEffect(() => {
document.addEventListener('scroll', onScroll);
return () => document.removeEventListener('scroll', onScroll);
});
return (
<>
<Child />
<Child />
</>
);
}
function Child() {
console.log('triggered??');
const something = () => {
console.log('triggered again??');
return true;
};
return <div>{something}</div>;
}