Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在所有WebSocket消息完成发送后调用函数_Javascript_Reactjs_Websocket - Fatal编程技术网

Javascript 在所有WebSocket消息完成发送后调用函数

Javascript 在所有WebSocket消息完成发送后调用函数,javascript,reactjs,websocket,Javascript,Reactjs,Websocket,我想知道在发送所有WebSocket消息并收到响应后如何调用函数 从技术上讲,我试图做的是将所有数据保存在组件内部的变量中,并在最后使用该变量调用set state event.markets.forEach( (marketId, index) => { console.log('index: ', index) sendMessage(messageTypes.getMarketType, {id: marketId}) }) this.props.setMarkets()

我想知道在发送所有WebSocket消息并收到响应后如何调用函数

从技术上讲,我试图做的是将所有数据保存在组件内部的变量中,并在最后使用该变量调用set state

event.markets.forEach( (marketId, index) => {
  console.log('index: ', index)
  sendMessage(messageTypes.getMarketType, {id: marketId})

})

this.props.setMarkets()   
问题是在收到消息之前调用了setMarkets()

onmessage函数如下所示:

stateManagement = data => {
  this.markets = {
    ...this.markets,
    [data.data.eventId]: [data.data]
  }
}
就像这样

w.onmessage = data => this.stateManagement(JSON.parse(data.data))
有人有什么想法吗?

请找到这个答案请找到这个答案
w.onmessage = data => this.stateManagement(JSON.parse(data.data))