Javascript socket.io启动和完成事件

Javascript socket.io启动和完成事件,javascript,node.js,express,socket.io,Javascript,Node.js,Express,Socket.io,我正在将socket.io与express 3一起使用,以构建一个应用程序 我想将加载程序动画设置为在收到消息时显示,并在收到消息时隐藏。 就像jQuerys.ajaxStart和.ajaxComplete一样,我可以在这里执行类似于$(“#加载程序”).show()的操作等 我是否可以在socket.io中捕获任何事件来实现此目的?您可以使用以下方法实现此目的: 服务器:发出关于启动的事件 客户端:在about\u to\u start上启用加载程序并发出download\u ready事件

我正在将socket.io与express 3一起使用,以构建一个应用程序

我想将加载程序动画设置为在收到消息时显示,并在收到消息时隐藏。 就像jQuerys
.ajaxStart
.ajaxComplete
一样,我可以在这里执行类似于
$(“#加载程序”).show()的操作


我是否可以在socket.io中捕获任何事件来实现此目的?

您可以使用以下方法实现此目的:

  • 服务器:发出关于启动的
    事件
    
  • 客户端:在
    about\u to\u start
    上启用加载程序并发出
    download\u ready
    事件
  • 服务器:在
    download\u ready
    事件上发送数据,即发出
    download
    事件
  • 客户端:在
    download
    事件中,对数据执行一些操作并禁用加载程序 我就是这样做的


    顺便问一下:我们是在谈论简单的消息传递系统吗?我认为在这种情况下没有必要这么做。下载不会超过几秒钟,如果需要,则需要优化应用程序或添加一些马力(即,如果流量过大,则添加一些机器)。跳过步骤1、2和3的一半。在步骤4中,您只需通知客户:“嘿,您有一条新消息!”

    是的,但是有没有一种方法可以在全球范围内做到这一点?所以我不必在每个emit事件上都设置它?这是用于通知系统、聊天等,所以最好在一个地方设置它。@George唯一的可能是在应用程序中添加一些自定义方法。和
    download\u ready
    事件可以设置一次。您甚至可以将该方法添加到
    var socket=require('socket.io')对象。但是要小心,因为将来可能会发生冲突(假设您要升级
    socket.io
    library)。