Javascript ACE编辑器,使用socket.io在文档中添加和更新多个游标

Javascript ACE编辑器,使用socket.io在文档中添加和更新多个游标,javascript,node.js,socket.io,ace-editor,Javascript,Node.js,Socket.io,Ace Editor,我正在尝试使用ACE编辑器和socket.io创建一个实时协作会话 我正在将光标位置、行和列传输给所有正在侦听的客户端 如何在所有连接的ACE客户端上添加和更新多个游标 这是我在ace上得到的: Collaborate.editor.getSession().selection.on('changeCursor', function(e) { console.log(Collaborate.editor.selection.getCursor()); Collabo

我正在尝试使用ACE编辑器和socket.io创建一个实时协作会话

我正在将光标位置、行和列传输给所有正在侦听的客户端

如何在所有连接的ACE客户端上添加和更新多个游标

这是我在ace上得到的:

Collaborate.editor.getSession().selection.on('changeCursor', function(e) {

console.log(Collaborate.editor.selection.getCursor());
              Collaborate.socket.emit('cursorchange',Collaborate.editor.selection.getCursor());

});
这就是我对socket.io的理解:

socket.on('cursorchange',函数(数据){

  • 如何将另一个游标添加到所有侦听客户端的文档中
  • 出于某种原因,我接到多个套接字调用和一个无休止的循环。我做错了什么

  • addSelectionMarker
    用于绘制默认选择标记,不允许设置颜色。 直接使用
    addMarker
    或使用
    addDynamicMarker
    查看示例

    我似乎无法取消选择之前的选择,让编辑们充满了大量的信息 选择和游标

    调用
    removeMarker
    或修改旧范围

    您还可以尝试使用来自的代码

        socket.broadcast.to(socket.room).emit('cursorusermove', socket.username, data);
    
    
    });