mirror of
https://github.com/openstf/stf
synced 2025-10-04 02:09:32 +02:00
28 lines
568 B
JavaScript
28 lines
568 B
JavaScript
var io = require('socket.io')
|
|
|
|
module.exports = function SocketFactory($rootScope) {
|
|
var socket = io.connect()
|
|
|
|
socket.scoped = function($scope) {
|
|
var listeners = []
|
|
|
|
$scope.$on('$destroy', function() {
|
|
listeners.forEach(function(listener) {
|
|
socket.removeListener(listener.event, listener.handler)
|
|
})
|
|
})
|
|
|
|
return {
|
|
on: function(event, handler) {
|
|
listeners.push({
|
|
event: event
|
|
, handler: handler
|
|
})
|
|
socket.on(event, handler)
|
|
return this
|
|
}
|
|
}
|
|
}
|
|
|
|
return socket
|
|
}
|