evg_observable 1.2.33 → 1.2.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -1
- package/package.json +1 -1
- package/src/outLib/Observable.js +5 -2
package/README.md
CHANGED
|
@@ -25,9 +25,14 @@ EVG Observable - is a small library for serving asynchronous events.
|
|
|
25
25
|
import {Observable} from "evg_observable/src/outLib/Observable";
|
|
26
26
|
|
|
27
27
|
const observable$ = new Observable('Some typed data (not only string)');
|
|
28
|
+
|
|
28
29
|
const listener1 = (value: string) => console.log('listener1:', value);
|
|
30
|
+
const errorHandler1 = (errorData: any, errorMessage: any) => {
|
|
31
|
+
console.log(`listener1 catch ERROR: data ${errorData}`, errorMessage);
|
|
32
|
+
};
|
|
33
|
+
const subscriber1 = observable$.subscribe(listener1, errorHandler1);
|
|
34
|
+
|
|
29
35
|
const listener2 = (value: string) => console.log('listener2:', value);
|
|
30
|
-
const subscriber1 = observable$.subscribe(listener1);
|
|
31
36
|
const subscriber2 = observable$.subscribe(listener2);
|
|
32
37
|
|
|
33
38
|
console.log(observable$.getValue());
|
package/package.json
CHANGED
package/src/outLib/Observable.js
CHANGED
|
@@ -22,11 +22,14 @@ class SubscribeObject {
|
|
|
22
22
|
}
|
|
23
23
|
static callbackSend(value, subsObj) {
|
|
24
24
|
const listener = subsObj.listener;
|
|
25
|
-
if (!listener
|
|
25
|
+
if (!listener) {
|
|
26
26
|
subsObj.unsubscribe();
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
29
|
switch (true) {
|
|
30
|
+
case !subsObj.observable:
|
|
31
|
+
subsObj.unsubscribe();
|
|
32
|
+
return;
|
|
30
33
|
case subsObj.isListenPaused:
|
|
31
34
|
return;
|
|
32
35
|
case !subsObj.isPipe:
|
|
@@ -156,8 +159,8 @@ class Observable {
|
|
|
156
159
|
return;
|
|
157
160
|
if (!this._isEnable)
|
|
158
161
|
return;
|
|
159
|
-
this.value = value;
|
|
160
162
|
this.isNextProcess = true;
|
|
163
|
+
this.value = value;
|
|
161
164
|
const length = this.listeners.length;
|
|
162
165
|
for (let i = 0; i < length; i++) {
|
|
163
166
|
this.listeners[i].send(value);
|