backwards compatibility broken for removing all handlers

This commit is contained in:
Brandon Nozaki Miller 2016-07-11 08:38:08 -07:00
parent 772ad646c9
commit 3084bed2a7
5 changed files with 26 additions and 18 deletions

2
.tags
View file

@ -44,4 +44,4 @@ type package.json /^ "type": "git",$/;" f
unsub event-pubsub.js /^function unsub(type,handler){$/;" f
url package.json /^ "url": "https:\/\/github.com\/RIAEvangelist\/event-pubsub.git"$/;" f
url package.json /^ "url": "https:\/\/github.com\/RIAEvangelist\/event-pubsub\/issues"$/;" f
version package.json /^ "version": "1.0.6",$/;" f
version package.json /^ "version": "2.0.0",$/;" f

View file

@ -1,12 +1,12 @@
Event PubSub
============
npm info :
![event-pubsub npm version](https://img.shields.io/npm/v/event-pubsub.svg) ![total npm downloads for event-pubsub](https://img.shields.io/npm/dt/event-pubsub.svg) ![monthly npm downloads for event-pubsub](https://img.shields.io/npm/dm/event-pubsub.svg)
![event-pubsub npm version](https://img.shields.io/npm/v/event-pubsub.svg) ![total npm downloads for event-pubsub](https://img.shields.io/npm/dt/event-pubsub.svg) ![monthly npm downloads for event-pubsub](https://img.shields.io/npm/dm/event-pubsub.svg)
GitHub info :
![event-pubsub GitHub Release](https://img.shields.io/github/release/RIAEvangelist/event-pubsub.svg) ![GitHub license event-pubsub license](https://img.shields.io/github/license/RIAEvangelist/event-pubsub.svg) ![open issues for event-pubsub on GitHub](https://img.shields.io/github/issues/RIAEvangelist/event-pubsub.svg)
![event-pubsub GitHub Release](https://img.shields.io/github/release/RIAEvangelist/event-pubsub.svg) ![GitHub license event-pubsub license](https://img.shields.io/github/license/RIAEvangelist/event-pubsub.svg) ![open issues for event-pubsub on GitHub](https://img.shields.io/github/issues/RIAEvangelist/event-pubsub.svg)
Pubsub events for Node and the browser allowing event scoping and multiple scopes.
Pubsub events for Node and the browser allowing event scoping and multiple scopes.
Easy for any developer level. No frills, just high speed pubsub events!
[Pretty GitHub.io site](http://riaevangelist.github.io/event-pubsub/)
@ -41,22 +41,22 @@ Easy for any developer level. No frills, just high speed pubsub events!
console.log('hello event recieved ', data);
}
);
events.on(
'*',
function(type){
console.log('Catch all detected event type of : ',type, '. List of all the sent arguments ',arguments);
}
);
events.on(
'removeEvents',
function(){
events.off('*');
events.off('*','*');
console.log('Removed all events');
}
);
/************************************\
* trigger events for testing
* **********************************/
@ -68,7 +68,7 @@ Easy for any developer level. No frills, just high speed pubsub events!
events.trigger(
'removeEvents'
);
#### Browser
##### HTML
@ -95,22 +95,22 @@ Easy for any developer level. No frills, just high speed pubsub events!
console.log('hello event recieved ', data);
}
);
events.on(
'*',
function(type){
console.log('Catch all detected event type of : ',type, '. List of all the sent arguments ',arguments);
}
);
events.on(
'removeEvents',
function(){
events.off('*');
events.off('*','*');
console.log('Removed all events');
}
);
/************************************\
* trigger events for testing
* **********************************/
@ -118,7 +118,7 @@ Easy for any developer level. No frills, just high speed pubsub events!
'hello',
'world'
);
events.trigger(
'removeEvents'
);

View file

@ -6,7 +6,7 @@ window.pubsub=(
var err=new ReferenceError('handler not defined');
throw(err);
}
checkScope.apply(this);
if(!this._events_[type])
@ -16,6 +16,10 @@ window.pubsub=(
}
function unsub(type,handler){
if(!handler){
var err=new ReferenceError('handler not defined. if you wish to remove all handlers from the event please pass "*" as the handler');
throw err;
}
checkScope.apply(this);
if(type=='*'){
@ -35,7 +39,7 @@ window.pubsub=(
if(!this._events_[type])
return;
if(!handler){
if(handler=='*'){
delete this._events_[type];
return;
}

View file

@ -13,6 +13,10 @@ function sub(type,handler){
}
function unsub(type,handler){
if(!handler){
var err=new ReferenceError('handler not defined. if you wish to remove all handlers from the event please pass "*" as the handler');
throw err;
}
checkScope.apply(this);
if(type=='*'){
@ -32,7 +36,7 @@ function unsub(type,handler){
if(!this._events_[type])
return;
if(!handler){
if(handler=='*'){
delete this._events_[type];
return;
}

View file

@ -1,6 +1,6 @@
{
"name": "event-pubsub",
"version": "1.0.6",
"version": "2.0.0",
"description": "Pubsub events for Node and the browser allowing event scoping and multiple scopes. Easy for any developer level. No frills, just high speed pubsub events!",
"main": "event-pubsub.js",
"directories": {