2013-02-13 4 views
1

내 socket.io 응용 프로그램에서 유사한 핸들러로 여러 이벤트가 발생했습니다. 여기에 간단한 그림은 다음과 같습니다socket.io에서 이벤트 캡처

socket.on('event1', function (data) { 
    print "1"; 
    }); 

    socket.on('event2', function (data) { 
    print "2"; 
    }); 

이러한 이벤트를 캐치하고, 특정 이벤트 이름을 가진 콜백을 호출 하나의 이벤트 핸들러를 작성하는 방법이 있나요? 이 같은 아마 뭔가 : 난 당신과 같은 문제를 충족

socket.on(function (event, data) { 
    print event; 
    }); 

답변

-1
function foo(data) { 
    console.log(data); 
} 
socket.on('event1', foo); 
socket.on('event2', foo); 
+0

A.이 이벤트 핸들러는 실제로 단일 이벤트 핸들러가 아닙니다 ... 많은 이벤트가있는 경우 많은 핸들러가 필요합니다. B. 'foo'함수는 그것을 트리거 한 이벤트의 유형을 알지 못합니다. –

+0

그럼 분명히 당신의 질문을 이해하지 못합니다. 원래 코드에 어떤 문제가 있습니까? –

+0

내 질문에 편집보기 –

0

. 지금까지 socket.io는이 기능을 지원하지 않았습니다. 내 프로젝트에서 클라이언트 코드를 'socket.emit'에서 'socket.send'로 변경하고 객체 직렬화를 직접 수행합니다.

+0

다른 이벤트 유형을 유지하면서 클라이언트 코드를 "emit"에서 "send"로 변경하는 예를 들려 줄 수 있습니까? –

0

저는 socket.io-events을 사용합니다. 정확히하고 있습니다.