我在React上进行表单登录以研究...,但我无法解决此错误。
TypeError:无法读取未定义的属性'classList'
我的代码错误:
changeState(){
const {isLogginActive} = this.state;
if(isLogginActive) {
this.rightSide.classList.remove("right");
this.rightSide.classList.add("left");
} else {
this.rightSide.classList.remove("left");
this.rightSide.classList.add("right");
}
this.setState((prevState)=> ({ isLogginActive: !prevState.isLogginActive }));
}
有人可以帮助我...为此提供一个解决方案...在React中完成
谢谢。
答案 0 :(得分:0)
我假设rightSide
是使用createRef API定义的属性。
在这种情况下,只能通过classList
的{{1}}属性访问current
。
ref
由于this.rightSide.current.classList
是异步的,因此如果您提早访问它,例如,可能会返回null。在createRef()
生命周期中。
因此,添加if语句来检查componentDidMount
current