gpt4 book ai didi

reactjs - 听向上/向下滚动?

转载 作者:行者123 更新时间:2023-12-03 13:18:46 25 4
gpt4 key购买 nike

我正在构建一个应用程序(ES6),我很好奇捕获向上/向下滚动事件的“正确”方法是什么?

我尝试(npm)安装react-scroll-listener,但无法让它与我的ES6类一起使用。

基本上我想要:如果向上滚动,则执行此操作;如果向下滚动,请执行其他操作。

import React from 'react';
import config from '../config';
import StaticImageList from '../Common/StaticImageList';
import ScrollListener from 'react-scroll-listener';

class Album extends React.Component {
constructor(props){
super(props);

}
myScrollStartHandler(){
console.log('Scroll start');

}
myScrollEndHandler(){
console.log('Scroll end 300ms(default)');
}
componentDidMount(){
scrollListener.addScrollHandler('body', myScrollStartHandler, myScrollEndHandler );
}
render(){
return <StaticImageList />;
}
};

export default Album;

最佳答案

这是 Hook 任何监听器的一般建议:

componentDidMount 中附加内容,在 componentWillUnmount 中取消附加

class Whatever extends Component {
componentDidMount() {
window.addEventListener('scroll', this.handleScroll, { passive: true })
}

componentWillUnmount() {
window.removeEventListener('scroll', this.handleScroll)
}

handleScroll(event) {
// do something like call `this.setState`
// access window.scrollY etc
}
}

关于reactjs - 听向上/向下滚动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38980371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com