为了账号安全,请及时绑定邮箱和手机立即绑定

React 中出现“无法读取 null 的属性‘classList’”错误

React 中出现“无法读取 null 的属性‘classList’”错误

RISEBY 2023-08-18 16:50:54
我构建了一个石头/剪刀/布 React 应用程序。该应用程序运行良好,但我只是想添加一个功能。当用户或 CPU 获胜时,我想向获胜的特定元素添加一个特定的类 (.bigger)。例如,在下面的代码中,当用户通过选择纸张获胜时,我尝试添加 .bigger 类,但应用程序崩溃了。 if(this.state.victory === true) {                if(this.state.choiceName === "paper") {                    document.getElementById("paper-box").classList.add("bigger")                } }我收到以下错误:“无法读取 null 的属性‘classList’”。为什么会这样?我怎样才能实现我想要的?预先非常感谢您。https://codesandbox.io/s/lively-smoke-7z7ej?file=/src/components/Main.js
查看完整描述

1 回答

?
沧海一幻觉

TA贡献1824条经验 获得超5个赞

可能的原因(您没有在问题本身中包含mcve )是您在搜索 DOM 时尚未使用该 ID 渲染该元素。


一般来说,在使用 React 时,您应该直接访问 DOM。

您的渲染函数应该负责确定输出。

...
<span id="paper-box" className={ this.state.choiceName === "paper" ? "bigger" : "" }>
...



查看完整回答
反对 回复 2023-08-18
  • 1 回答
  • 0 关注
  • 267 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信