React通过setState禁止用户点击

场景: 前端发完请求后页面显示loading状态,此时需要禁止用户操作,通过setState

this.setState({loading: true})

添加给外层容器添加pointer-events: none样式

<div style={{pointerEvents: this.state.loading ? 'none' : 'auto'}}> </div>

然而,由于setState是异步此时用户还可以乱点击。。。
这种情况应该如何处理?只能用DOM操作了吗?

阅读 2.9k
2 个回答

给loading添加透明背景也是一种解决办法

加一个z-index较高透明背景的loading

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题