phoenix-angular

0.1.0 • Public • Published

Angular Phoenix

Provides angular bindings to Phoenix so we can run events within the digest loop.

I've also taken the liberty of Promisifying phoenix!

Installing

$ bower install --save angular-phoenix

Note: You must have the original phoenix.js loaded prior to this

How to use

This is incomplete and only allows for a single socket connection per client

First we need to set our socket base url and add a global dependency.

angular.module('myApp', ['angular-phoenix'])

.config(['PhoenixProvider', PhoenixProvider => {
  PhoenixProvider.setUrl('ws//localhost:9000/ws')
}])

Now were ready!!!

Joining a channel

You can only join a channel once, if you provide a new message it will leave then rejoin the channel. Just like normal phoenix we call Phoenix.join however we also can take scope!

// $scope, eventName, message
Phoenix.join($scope, 'name', {})
  .then(chann => {
    // Now our callbacks will get removed on scope destruction
    chann.on('message', handler)
  })
 
Phoenix.join('name', {})
  .then(chann => {
    // We didn't pass scope these callbacks will always run
    chann.on('message', hander)
  })

Leaving a channel

Phoenix.leave('name')

Accessing base phoenix or current socket

Phoenix.base // Contains original Phoenix
Phoenix.socket // Contains your current socket

Package Sidebar

Install

npm i phoenix-angular

Weekly Downloads

0

Version

0.1.0

License

MIT

Last publish

Collaborators

  • mikaak