【发布时间】:2016-12-26 10:30:26
【问题描述】:
我有一些反应组件,需要使用“Enter”功能。
class MyComponent extends Component {
componentDidMount() {
console.log('componentDidMount');
document.removeEventListener('keypress', this.enter);
document.addEventListener('keypress', this.enter.bind(this));
}
componentWillUnmount() {
console.log('componentWillUnmount');
document.removeEventListener('keypress', this.enter);
}
render() {
return (...);
}
enter(target) {
if (target.charCode === 13) {
console.log('fired');
/* after that component unmounted */
}
}
}
控制台日志显示:
componentDidMount
fired
componentWillUnmount
,但是当按 Enter 时,控制台再次显示fired。
【问题讨论】:
标签: javascript reactjs events components enter