当我从某人单击某人时,我的表单具有不同的输入(例如下图),如果其他输入已打开,我想关闭它们。
也许有人可以说我的错误在哪里? 谢谢!
我的代码外观:
class SignUp extends Component {
constructor() {
super();
this.state = {
selectedCode: false,
};
}
componentDidMount() {
document.addEventListener("click", this.handleClickOutside);
}
componentWillUnmount() {
document.removeEventListener("click", this.handleClickOutside);
}
handleClickOutside(e) {
if (e.target.id !== "code") {
this.setState({
selectedCode: false // here is an error
});
} else {
console.log("YES CODE");
}
}
render (){
return (
<form >
<input .../>
<input id="code" .../>
</form>
}
答案 0 :(得分:2)
尝试一下
document.addEventListener("click", this.handleClickOutside.bind(this));