🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@tb-app/pub-sub

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@tb-app/pub-sub - npm Package Compare versions

Comparing version
0.1.0
to
0.2.0
+29
-4
lib/index.js

@@ -0,1 +1,5 @@

'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
function warning(message) {

@@ -52,3 +56,3 @@ console.error(message);

/**
* 发布。根据 name 触发响应的注册回调
* 发布。根据 name/token 触发响应的注册回调
* @param name

@@ -59,4 +63,17 @@ * @param data

function publish(name, data) {
assertName(name);
if (typeof name !== 'string') {
warning("Expected the name to be a string ,Instead, received:'" + typeof name + "'");
}
var result = false;
if (isToken(name)) {
var token = name;
var names = Object.keys(callbacks);
for (var i = 0; i < names.length; i += 1) {
var map = callbacks[names[i]];
if (hasOwnProperty(map, token)) {
map[token](names[i], data);
return true;
}
}
}
if (hasOwnProperty(callbacks, name)) {

@@ -147,3 +164,3 @@ Object.values(callbacks[name]).forEach(function (callback) {

/**
* 订阅消息,但是回调只会触发一次
* 订阅消息,但是回调只会触发一次。返回结果为token
* @param name

@@ -157,4 +174,12 @@ * @param callback

});
return token;
}
export { clearAllSubscriptions, clearSubscriptions, getSubscriptions, publish, subscribe, subscribeOnce, subscribeOnlyOne, unsubscribe };
exports.clearAllSubscriptions = clearAllSubscriptions;
exports.clearSubscriptions = clearSubscriptions;
exports.getSubscriptions = getSubscriptions;
exports.publish = publish;
exports.subscribe = subscribe;
exports.subscribeOnce = subscribeOnce;
exports.subscribeOnlyOne = subscribeOnlyOne;
exports.unsubscribe = unsubscribe;
+3
-2
{
"name": "@tb-app/pub-sub",
"version": "0.1.0",
"version": "0.2.0",
"description": "提供发布订阅模式的库",

@@ -14,2 +14,3 @@ "keywords": [

"main": "lib/index.js",
"types": "types/index.d.ts",
"directories": {

@@ -55,3 +56,3 @@ "lib": "lib",

},
"gitHead": "0de557118beb661f4fa8983d0584bfdf671dcb9e"
"gitHead": "8df64e4ad6f74171775857f867461107fd6ea4b9"
}

@@ -10,3 +10,3 @@ declare type Callback = (name: string, data: any) => any;

/**
* 发布。根据 name 触发响应的注册回调
* 发布。根据 name/token 触发响应的注册回调
* @param name

@@ -43,7 +43,7 @@ * @param data

/**
* 订阅消息,但是回调只会触发一次
* 订阅消息,但是回调只会触发一次。返回结果为token
* @param name
* @param callback
*/
declare function subscribeOnce(name: string, callback: Callback): void;
declare function subscribeOnce(name: string, callback: Callback): string;
export { subscribe, publish, clearSubscriptions, unsubscribe, clearAllSubscriptions, getSubscriptions, subscribeOnlyOne, subscribeOnce };