LogoSignals.dart
Copy Markdown
rodydavis/signals.dart 999999

Type: SignalsObserver

API reference and details for SignalsObserver from signals.dart.

SignalsObserver#

Kind: class  |  Package: package:signals_core

Class: SignalsObserver#

You can observe all signal values in the dart application by providing an implementation of SignalsObserver:

abstract class SignalsObserver {
  void onSignalCreated(Signal instance);
  void onSignalUpdated(Signal instance, dynamic value);
  void onComputedCreated(Computed instance);
  void onComputedUpdated(Computed instance, dynamic value);
  static SignalsObserver? instance;
}

There is a prebuilt LoggingSignalsObserver for printing updates to the console.

To add the observer override the instance at the start of the application:

void main() {
    SignalsObserver.instance = LoggingSignalsObserver(); // or custom observer
    ...
}

This will have a slight performance hit since every update will be tracked via the observer. It is recommended to only set the SignalsObserver.instance in debug or profile mode.

Members of SignalsObserver#

Member Type Signature Description
onSignalCreated method dart void onSignalCreated(Signal instance, T value) Called when a signal is created.
onSignalUpdated method dart void onSignalUpdated(Signal instance, T value) Called when a signal is updated.
onComputedCreated method dart void onComputedCreated(Computed instance) Called when a computed is created.
onComputedUpdated method dart void onComputedUpdated(Computed instance, T value) Called when a computed is updated.
onEffectCreated method dart void onEffectCreated(Effect instance) Called when a effect is created.
onEffectCalled method dart void onEffectCalled(Effect instance) Called when a effect is called.
onEffectRemoved method dart void onEffectRemoved(Effect instance) Called when a effect is disposed.
instance field dart static SignalsObserver? instance The current observer instance.

References#

The SignalsObserver type is referenced and used in the following pages: