zent
Version:
一套前端设计语言和基于React的实现
28 lines (22 loc) • 650 B
JavaScript
import { Component, PropTypes } from 'react';
export default class WindowEventHandler extends Component {
static propTypes = {
eventName: PropTypes.string.isRequired,
callback: PropTypes.func.isRequired,
useCapture: PropTypes.bool
};
static defaultProps = {
useCapture: false
};
componentDidMount() {
const { eventName, callback, useCapture } = this.props;
window.addEventListener(eventName, callback, useCapture);
}
componentWillUnmount() {
const { eventName, callback, useCapture } = this.props;
window.removeEventListener(eventName, callback, useCapture);
}
render() {
return null;
}
}