react中怎么移除监听的滚动事件

下面的代码中在componentDidMount监听滚动事件是可以的,可是躺我跳到另一个页面的时候并有走componentWillUnmount中的移除监听事件。有什么方法能解决吗??componentDidMount(){
//监听滚动
window.addEventListener('scroll',()=>{
console.log('滚动');
constscrollTop=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;
constheader=document.body.querySelector('.headerStyle')
if(scrollTop>100){
header.style.backgroundColor='#FF8949'
}elseif(scrollTop<100||scrollTop==0){
header.style.backgroundColor='rgba(0,0,0,0)'
}
})
}
componentWillUnmount(){
//移除监听
window.removeEventListener('scroll',()=>{
console.log('移除');
constscrollTop=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;
constheader=document.body.querySelector('.headerStyle')
if(scrollTop>100){
header.style.backgroundColor='rgba(247,247,247,1)'
}elseif(scrollTop<100||scrollTop==0){
header.style.backgroundColor='rgba(247,247,247,1)'
}
})
}
慕田峪9158850
浏览 1241回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript