eventus 1.0.0 copy "eventus: ^1.0.0" to clipboard
eventus: ^1.0.0 copied to clipboard

Dart 1 only

Eventus is a professional implementation of EventEmitter for Dart.

Eventus #

This project introduces a class to be used as a mixin to allow a class to act as an event emitter to which others can subscribe. Several event-related projects existed, but none of them offered the flexibility and simplicity that we wanted, so we created Eventus.

Eventus is a professional implementation of EventEmitter for Dart. This is based on the Node.js EventEmitter enhanced with Dart super power!

Installation #

To install package in your system, declare it as a dependency in pubspec.yaml:

dependencies:
    eventus: ">=1.0.0 <2.0.0"

Then import eventus in your project

import 'package:eventus/eventus.dart';

Usage #

You can use strings to identify the event, and provide additional data separately:

// to emit:
emitter.emit('success', result_var);
// to subscribe:
emitter.on('success', (String r) => doStuff(r));

You can send zero or even to three elements to handler, like that:

emitter.emit('event', arg1, arg2, arg3);
// if you need more arguments use the power of lists
emitter.emit('event', arg1, arg2, [arg3, arg4, arg5]);

Unsubscribing an event #

The removeListener() method allow you to remove a listener for a given event. This removes normal listeners or even one-time event handlers.

emitter.removeListener('event_name', handlerReference);

Remove all listeners for an event #

If you want remove all the listeners who are listening a certain event, you use the removeAllListeners method.

emitter.removeAllListeners('event_name');

Remove all listeners #

You can also unsubscribe all events from an event emitter as follows:

emitter.clearListeners();

Features and bugs #

Please file feature requests and bugs at the issue tracker.

0
likes
20
points
12
downloads

Publisher

unverified uploader

Weekly Downloads

Eventus is a professional implementation of EventEmitter for Dart.

License

BSD-3-Clause (license)

Dependencies

dict

More

Packages that depend on eventus