gpt4 book ai didi

javascript - 重写,以便在找不到类时不会触发错误

转载 作者:行者123 更新时间:2023-11-30 09:40:44 26 4
gpt4 key购买 nike

我目前正在使用以下功能,当用户单击某处以确定是否隐藏下拉菜单(在 react 中)。一切正常,但当我单击正文时,它会记录以下内容。

我尝试重写它几次,但我找不到解决这个问题的方法。

Uncaught TypeError: Cannot read property 'className' of null

我使用的功能

if (!event.target.className.includes('USERBAR_notifications') && !event.target.parentElement.className.includes('USERBAR_notifications') && !event.target.className.includes('USERBAR_user') && !event.target.parentElement.className.includes('USERBAR_user') && this.state.active !== '') {
this.setState({ active: ''});
}

最佳答案

因为 event.targetevent.target.parentElement 都可以为 null/undefined,所以首先你应该检查它们是否不为 null尝试访问他们的任何属性:

if (event.target && event.target.parentElement &&
!event.target.className.includes('USERBAR_notifications') &&
!event.target.parentElement.className.includes('USERBAR_notifications') &&
!event.target.className.includes('USERBARa_user') &&
!event.target.parentElement.className.includes('USERBAR_user') &&
this.state.active !== '') {
this.setState({ active: ''});
}

关于javascript - 重写,以便在找不到类时不会触发错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41245504/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com