2016-02-29 67 views

回答

0

没有,socket.io正确地希望您能发射事件之前处理任何检查。不应该出现这样的情况:你已经完成了检查,你准备好发出一个事件,然后在你发出事件后立即发生了变化。

随着异步和socket.io,如果您发出事件,以正确的顺序(如果有事件的顺序,前面的事件应该触发下一个),你的情况应该不会发生。

我建议重组你的代码,并采取在其第二次看。但是如果你仍然想要做你所要求的,你可以编写一个包装函数myEmit(),它使用socket.io的emit()并添加一些检查。

无论你覆盖socket.io的emit()还是只是调用myEmit()都取决于你(pst,不要这样做)

+0

的主要问题是,我有大约10个文件/类,从多个来源的数据进行解析,并为用户提供了一个单独的列表。每个类由几个方法组成,每个方法都有2-3个带请求嵌套回调的请求。所以基本上我需要在发布之前在每个类中进行数据检查,而不是在发射前检查一个... – user1564141