javascript - onClick按钮将State设置为reactjs中的值而不是未定义

标签 javascript reactjs

我正在按钮上编写一个 onClick 事件来设置值:0,但第一次单击时,它给出“未定义”值。

我已在构造函数中将 value 的状态设置为 null

处理函数代码

sitHandler = () => {
  this.setState({
        robotButtons: { value: 0, eventTime: Date.now() }
    });
 //am calling a socket here to send these new setState 'robotButtons' 
 data
    console.log(this.state.robotButtons);
}

这是我的带有点击事件的按钮

<Button className="robot-control-button" onClick={this.handleSit}>

我尝试过使用 e.preventdefault(e) 但它会引发错误。

感谢您提前提供帮助

最佳答案

您需要在回调中编写控制台,因为 setState 需要一些时间来更新值。

this.setState({
    robotButtons: { value: 0, eventTime: Date.now() }
},function(){
   console.log(this.state.robotButtons);
});

关于javascript - onClick按钮将State设置为reactjs中的值而不是未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53112847/

相关文章:

JavaScript 内联代码并包括 .js 文件

javascript - 使用 AJAX 调用服务器端方法

javascript - NextJS 在生产构建中错误的 CSS 顺序

javascript - 在 Backbone 集合中搜索,使用 React 更新 UI

javascript - Phoenix .js : WebSocket connection to ws://localhost:4000/socket failed

javascript - text-overflow 属性自定义样式

javascript - 添加 YYYY、MM、DD 下拉列表以在网页上选择日期

javascript - React 绑定(bind)到 ReactDOM 之外的 HTML 元素

react-router - react 路由器 : Cannot read property 'pathname' of undefined

javascript - jquery validate 自定义验证不起作用