npm 地址
React 的传感器组件,当它进入或离开窗口视口时会通知您。
可用于判断窗口是否滑动到底部、头部、离开、进入等执行的回调操作。
demo
(1)可用于滚动加载效果,滚动到底部出发请求。
(2)下面实现滑动到底部的时候有一个旋转的进度条
import React, { Component } from "react";//引入import VisibilitySensor from "react-visibility-sensor";import CircularProgress from "@material-ui/core/CircularProgress";class App extends Component {render() {return (<VisibilitySensor onChange={this.loadMorePage}><CircularProgress className={this.props.progress} /></VisibilitySensor>)}}export default App;
内容一部分进入和完全移出屏幕触发
需要 partialVisibility 和 offset 配合使用
partialVisibility:(默认值false),如果只有一部分可见,则认为该元素可见。可能的值还有-‘top’,’right’,’bottom’,’left’-如果需要检测其中之一何时显式可见。offset:(默认值{})带有偏移量,您可以在可见性应已更改的情况下从一侧定义px的数量。因此,在示例中,设置offset={{top:10}}意味着当视口顶部小于10像素时,可见性将变为隐藏状态。<VisibilitySensorpartialVisibilityoffset={{ top: 10 }}onChange={this.loadMorePage}><div>内容</div></VisibilitySensor>
