Renderless Components
class EventListener extends React.Component {
static propTypes = {
eventName: PropTypes.string,
handler: PropTypes.func,
};
componentDidMount() {
const {eventName, handler} = this.props;
window.addEventListener(eventName, handler);
}
componentWillUnmount() {
const {eventName, handler} = this.props;
window.removeEventListener(eventName, handler);
}
render() {
return null;
}
}Last updated