Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.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
Node.js 防止Socket.io为每个事件触发多次_Node.js_Socket.io - Fatal编程技术网

Node.js 防止Socket.io为每个事件触发多次

Node.js 防止Socket.io为每个事件触发多次,node.js,socket.io,Node.js,Socket.io,当客户端单击按钮时,我试图从服务器向客户端发出事件。我遇到的问题是,每次服务器发出事件时,客户端代码都会执行多次。如何确保客户端代码对服务器发出的每个事件只触发一次 我的客户端代码如下所示: socket.on('data', function(data) { $('.button').on('click, function() { clientFunc(data) }); }); serverFunc(json, function(data) { socket.em

当客户端单击按钮时,我试图从服务器向客户端发出事件。我遇到的问题是,每次服务器发出事件时,客户端代码都会执行多次。如何确保客户端代码对服务器发出的每个事件只触发一次

我的客户端代码如下所示:

socket.on('data', function(data) {   
  $('.button').on('click, function() {
    clientFunc(data)
  });
});
serverFunc(json, function(data) {
  socket.emit('data', data);
});
我的服务器代码如下所示:

socket.on('data', function(data) {   
  $('.button').on('click, function() {
    clientFunc(data)
  });
});
serverFunc(json, function(data) {
  socket.emit('data', data);
});

在阅读节点文档时,我似乎需要这样做,以便每个事件只触发一次
clientFunc

hello@turtle您是否能够找到问题的解决方案,