我正在处理具有可见性传感器的页面,因此每当我滚动到该部分时,动画就会开始。但是,我只需要它只可见一次。
const [scrollStatus, setScroll] = useState(false);
const contextData = {
stateSetters: {
scrollStatus
}
}
<ScrollContext.Provider value={contextData}>
<VisibilitySensor onChange={() => {
setScroll(!scrollStatus);
}}>
<CountUp start={0} end={scrollStatus ? 0 : 40} duration={1.75} suffix="+"/>
</VisibilitySensor>
</ScrollContext.Provider>
我目前正在使用钩子和功能组件。我一直在寻找能够在查看后将可见性设置为 true 的方法。
输出应该已经可见,而不是仅在每次滚动时才可见。