2013-11-21 4 views

ответ

5

source.onmessage - встроенная функция-обертка для EventSource, которая запускается при отправке новых данных клиенту. Он срабатывает, когда нетevent атрибут возвращается (по умолчанию) и не огонь когда установлен.

addEventListener похож, но отличается тем, что он прослушивает конкретное имя event и запускает его присутствие, что позволяет отделить ваши функции от нескольких событий. Затем вы можете проанализировать возвращаемые данные JSON. Он может использоваться для любого типа события. Посмотрите на этот пример:

source.addEventListener("login", function(e) { 
    // do your login specific logic 
    var returnedData = JSON.parse(e); 
    console.log(returnedData); 
}, false); 

Этот фрагмент кода будет прослушивать сообщения сервера с event указанным в login, то это вызывает функцию обратного вызова.

Подробнее:

+1

если я использую систему обмена сообщений для веба-рабочих, это имеет значения, если я использую addEventLisener или OnMessage? вы отмечаете, что addEventListener можно использовать для прослушивания нескольких событий, но разве это не то же самое, если вы решили использовать onmessage vs onclick? вы тоже можете прослушивать разные события – akantoword

+2

Привет @akantoword - я не знаком с вашим приложением, но если вы отправляете разные имена событий, возможно, проще и проще использовать 'addEventListener ('myeventname')', чтобы отделить ваши логика. 'onmessage', как правило, используется больше для простых систем обмена сообщениями, где разные события не используются. Надеюсь, это поможет. –

Смежные вопросы