Giter Club home page Giter Club logo

angular-sockjs's Introduction

angular-sockjs Build Status

SockJS provider for AngularJS.

Based on Brian Ford's angular-socket-io.

Install

  1. bower install angular-sockjs
  2. Made sure the SockJS client library is loaded.
  3. Include the socket.js script provided by this component into your app.
  4. Add bd.sockjs as a module dependency to your app.

Usage

This module exposes a socketFactory, which is an API for instantiating sockets that are integrated with Angular's digest cycle.

Making a Socket Instance

// in the top-level module of the app
angular.module('myApp', [
  'bd.sockjs',
  'myApp.MyCtrl'
])
.factory('mySocket', function (socketFactory) {
  return socketFactory();
});

With that, you can inject your mySocket service into controllers and other serivices within your application!

Using Your Socket Instance

Building on the example above:

// in the top-level module of the app
angular.module('myApp', [
  'bd.sockjs',
  'myApp.MyCtrl'
])
.factory('mySocket', function (socketFactory) {
  return socketFactory({
    url: 'https://example.com'
  });
})
.controller('MyController', function (mySocket) {
  // ...
});

API

Since the SockJS API uses single event handlers rather than Socket.io's event emitter style, this library provides a lightweight wrapper around the handlers.

socket.setHandler(event, callback)

Accepts valid socket events: open, close, and message. Returns socket wrapper so multiple calls can be chained.

socket.removeHandler(event)

Handles the same events as socket.setHandler. Returns socket wrapper so multiple calls can be chained.

socket.send(message)

Sends a socket message.

socket.close([code], [reason])

Attempts to close the socket.


Options

socketFactory({socket: })

This option allows you to provide the socket service with a SockJS instance to be used internally. This is useful if you need to hold a reference to the sockjs object for use elsewhere.

angular.module('myApp', [
  'bd.sockjs'
])
.factory('mySocket', function (socketFactory) {
  var sockjs = new SockJS('http://host');

  mySocket = socketFactory({
    socket: sockjs
  });

  return mySocket;
});

socketFactory({url: })

This option allows you to provide a URL to pass through to the SockJS constructor.

License

MIT

angular-sockjs's People

Contributors

analogj avatar bendrucker avatar btford avatar jbpionnier avatar waqasajaz avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.