on<T> method

void on<T>(
  1. void callback(
    1. T event
    ), {
  2. bool broadcast = true,
})

Registers a listener for events of type T.

Example:

EventChannel.i.on<UserLoggedInEvent>((event) {
  print('User logged in: ${event.userId}');
});

Implementation

void on<T>(void Function(T event) callback, {bool broadcast = true}) {
  final controller = _getOrCreateController<T>(broadcast: broadcast);

  _subscriptions[T]?.cancel();
  _subscriptions[T] = controller.stream.listen((event) => callback(event));
}