Skip to main content

Interface: IDelegate<TFunc>

Charting Library.IDelegate

A subscription. Used to subscribe callbacks to events.

Type parameters​

NameType
TFuncextends Function

Hierarchy​

Properties​

fire​

fire: TFunc

Fire (Evoke)

Methods​

subscribe​

subscribe(obj, member, singleshot?): void

Subscribe a callback function to this event. Subscribed callbacks are called when the event fires.

Parameters​

NameTypeDescription
objobjectObject used as the this value bound to the callback function.
memberTFuncFunction called when the event is fired.
singleshot?booleantrue if the subscription should be automatically removed after the first time it is fired.

Returns​

void

// Log 'Series data loaded!' to the console the next time the data loaded event fires and then unsubscribe automatically.
seriesApi.onDataLoaded().subscribe(null, () => { console.log('Series data loaded!'); }, true);

Subscribe to an event within a class. Manually unsubscribe when some condition is true.

class Example {
constructor(seriesApi) {
this._seriesApi = seriesApi;
this._seriesApi.onDataLoaded().subscribe(this, this._onDataLoaded);
}

_onDataLoaded() {
// Do something in response to the event.

if (someUnsubscribeCondition) {
this._seriesApi.onDataLoaded().unsubscribe(this, this._onDataLoaded);
}
}
}

Inherited from​

ISubscription.subscribe


unsubscribe​

unsubscribe(obj, member): void

Unsubscribe a previously subscribed callback function. It is important that the obj and member arguments are the same as the ones passed when the callback was subscribed.

Parameters​

NameTypeDescription
objobjectObject passed as the this value when the callback was subscribed.
memberTFuncFunction subscribed to the event.

Returns​

void

Inherited from​

ISubscription.unsubscribe


unsubscribeAll​

unsubscribeAll(obj): void

Unsubscribe all callbacks that were subscribed with the same obj value.

Parameters​

NameTypeDescription
objobjectobj value passed when the callbacks were subscribed.

Returns​

void

// Unsubscribe all three callback functions at once in the `destroy` method.
class Example {
constructor(seriesApi) {
this._seriesApi = seriesApi;
this._seriesApi.onDataLoaded().subscribe(this, this._callback1);
this._seriesApi.onDataLoaded().subscribe(this, this._callback2);
this._seriesApi.onDataLoaded().subscribe(this, this._callback3);
}

destroy() {
this._seriesapi.onDataLoaded().unsubscribeAll(this);
}

_callback1() { ... }
_callback2() { ... }
_callback3() { ... }
}

Inherited from​

ISubscription.unsubscribeAll