当我尝试从socket.on获取价值时,存在一个问题。即使将其推入数组也无法获得价值。我必须使用axios,但是有什么办法吗?
我的代码:
`var array = new Array();
socket.on("abc", function(data)
{
array.push(data);
console.log(JSON.stringify(array)); // work ok
}
console.log(JSON.stringify(array)); // problem here -> empty value
`
感谢您的帮助。
答案 0 :(得分:1)
没有问题。您正在创建一个数组,并在套接字上为'abc'事件设置一个回调函数,并将该数组记录到控制台。请注意,当套接字收到abc事件时,回调函数将在以后执行。您的数组包含首次执行回调后的数据。 您的代码将以这种方式执行:
1: `var array = new Array();`
2: set a callback function for abc event on your socket
3: `console.log(JSON.stringify(array)); // array is empty`
4: when abc event received on socket, function(data) will be run
5: now array is not empty
我希望这可以帮助您