ReactiveN<T> class

A reactive variable that supports nullable values.

ReactiveN extends Reactive to allow null as a valid value. All features from Reactive are available, including listeners, history tracking, and debounce/throttle.

Example:

// String that can be null
final username = ReactiveN<String>(null);
username.value = 'John';
username.value = null; // Valid

// With type inference
final age = ReactiveN<int>(); // Defaults to null

// With history
final data = ReactiveN<String>(
  'initial',
  enableHistory: true,
);
Inheritance
Implementers

Constructors

ReactiveN([T? value, bool enableHistory = false, int maxHistorySize = 50])
Creates a ReactiveN variable with an optional initial value.

Properties

canRedo → bool
Returns true if redo is available.
no setterinherited
canUndo → bool
Returns true if undo is available.
no setterinherited
hashCode → int
The hash code for this object.
no setterinherited
listeners → List<Function>
Returns a list of all registered listener functions.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
value ↔ T?
Gets the current value of the reactive variable.
getter/setter pairinherited
valueNotifier → ValueNotifier<T?>
Provides access to the underlying ValueNotifier.
no setterinherited

Methods

addListener(void listener(T? value), {String? listenerName}) → void
Registers a listener that will be called whenever the value changes.
inherited
bindStream(Stream<T?> stream) → StreamSubscription<T?>
Binds a stream to this reactive variable.
inherited
clearHistory() → void
Clears all history and resets to the current value.
inherited
close() → void
Disposes of all resources used by this reactive variable.
inherited
ever(void callback(T? value)) → void
Registers a callback that executes every time the value changes.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
once(void callback(T? value)) → void
Registers a callback that executes only once on the next value change.
inherited
redo() → bool
Reapplies a previously undone value.
inherited
refresh() → void
Manually triggers an update to all listeners and Observer widgets.
inherited
removeAllListeners() → void
Removes all registered listeners from this reactive variable.
inherited
removeListener({required String listenerName}) → void
Removes a specific listener by its listenerName.
inherited
setDebounce(Duration duration) → void
Configures debounce behavior for value updates.
inherited
setThrottle(Duration duration) → void
Configures throttle behavior for value updates.
inherited
toString() → String
A string representation of this object.
inherited
undo() → bool
Reverts to the previous value in history.
inherited
updateDebounced(T? value) → void
Updates the value with debounce applied.
inherited
updateThrottled(T? value) → void
Updates the value with throttle applied.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited