DebouncerMixin<T extends StatefulWidget> mixin
A mixin for State subclasses that manages a Debouncer automatically.
The debouncer is created lazily on first use and disposed alongside the widget — you never need to manually call Debouncer.dispose.
Basic usage
class _SearchBarState extends State<SearchBar> with DebouncerMixin {
void _onChanged(String query) {
debounce(() => _search(query));
}
}
Custom delay
@override
Duration get debounceDuration => const Duration(milliseconds: 500);
Custom strategy
@override
DebouncerStrategy get debouncerStrategy => const LeadingEdgeStrategy();
- Superclass constraints
- State<
T>
- State<
Properties
- context → BuildContext
-
The location in the tree where this widget builds.
no setterinherited
- debounceDuration → Duration
-
How long to wait after the last call before firing. Default: 300 ms.
no setter
- debouncerHooks → LifecycleHooks?
-
Optional LifecycleHooks. Override to receive fire/cancel callbacks.
no setter
- debouncerLogger → DebouncerLogger?
-
Optional DebouncerLogger. Override to enable logging.
no setter
- debouncerStrategy → DebouncerStrategy
-
Which DebouncerStrategy to use. Default: TrailingEdgeStrategy.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasPendingDebounce → bool
-
trueif a debounced call is currently waiting to fire.no setter - mounted → bool
-
Whether this State object is currently in a tree.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- widget → T
-
The current configuration.
no setterinherited
Methods
-
activate(
) → void -
Called when this object is reinserted into the tree after having been
removed via deactivate.
inherited
-
build(
BuildContext context) → Widget -
Describes the part of the user interface represented by this widget.
inherited
-
cancelDebounce(
) → void - Cancels any currently-pending debounced action.
-
deactivate(
) → void -
Called when this object is removed from the tree.
inherited
-
debounce(
VoidCallback action) → void -
Schedules
actionthrough the widget-scoped debouncer. -
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
didChangeDependencies(
) → void -
Called when a dependency of this State object changes.
inherited
-
didUpdateWidget(
covariant T oldWidget) → void -
Called whenever the widget configuration changes.
inherited
-
dispose(
) → void -
Called when this object is removed from the tree permanently.
override
-
initState(
) → void -
Called when this object is inserted into the tree.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
reassemble(
) → void -
Called whenever the application is reassembled during debugging, for
example during hot reload.
inherited
-
setState(
VoidCallback fn) → void -
Notify the framework that the internal state of this object has changed.
inherited
-
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringShort(
) → String -
A brief description of this object, usually just the runtimeType and the
hashCode.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited