Security News
Bun 1.2 Released with 90% Node.js Compatibility and Built-in S3 Object Support
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.
rx-sample simplifies managing RxJS Observables with Effector events, ensuring streamlined subscription control in reactive applications.
rx-sample
is a utility for working with RxJS in conjunction with Effector, making it easy to manage subscriptions to Observables using Effector events.
You can install the rx-sample
package via npm:
npm install rx-sample
Here’s a basic example of how to use rxSample in your project:
import { Subject } from "rxjs";
import { createEvent } from "effector";
import { rxSample } from "rx-sample";
// Create Effector events
const mockChannel = new Subject();
const subscribe = createEvent();
const unsubscribe = createEvent();
const target = createEvent();
// Use rxSample
rxSample({
source: mockChannel,
subscribeOn: subscribe,
unsubscribeOn: unsubscribe,
target,
});
// Example usage of events
// Start subscription to mockChannel
sample({
clock: subscribeTriggered, // Some event
target: subscribe,
});
mockChannel.next("some data"); // Send data
sample({
clock: unsubscribeTriggered, // Some event
target: unsubscribe,
});
The rxSample function takes a single argument — an object with four required parameters:
type Input<D> = {
source: Observable<D>;
subscribeOn: Event<unknown>;
unsubscribeOn: Event<unknown>;
target: EventCallable<D>;
};
type InputWithStore<D> = {
source: Store<Observable<D>>;
subscribeOn: Event<unknown>;
unsubscribeOn: Event<unknown>;
target: EventCallable<D>;
};
source
: Observable<D>
— The Observable to subscribe to.subscribeOn
: EventCallable<S>
— An Effector event that triggers the subscription to source
.unsubscribeOn
: EventCallable<U>
— An Effector event that triggers the unsubscription from source
.target
: EventCallable<D>
— An Effector event where data from source
will be sent, or a void event to execute side effects.Subscribe to the Observable: When the subscribeOn
event triggers, the function subscribes to the specified source
and starts sending data from the Observable to the target
.
Unsubscribe from the Observable: When the unsubscribeOn
event triggers, the function unsubscribes from source
, freeing resources and stopping the data flow.
Store the Subscription: The subscription is stored in an internal Effector store ($subscription
), allowing easy unsubscription management and ensuring that the subscription is always properly terminated.
Suppose we have an Observable representing a stream of messages, and we want to manage subscriptions to this stream using Effector events.
You can see example here: codesanbox
Managing Real-Time Data Subscriptions: For example, news feeds, chat messages, server updates.
Integration with Existing Systems: rx-sample is ideal for scenarios where you need to manage subscriptions to Observables within your application using Effector events.
Special thanks to VOISO frontend developers:
Arseniy |
Andrey |
FAQs
rx-sample simplifies managing RxJS Observables with Effector events, ensuring streamlined subscription control in reactive applications.
The npm package rx-sample receives a total of 389 weekly downloads. As such, rx-sample popularity was classified as not popular.
We found that rx-sample demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.
Security News
Biden's executive order pushes for AI-driven cybersecurity, software supply chain transparency, and stronger protections for federal and open source systems.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.