useActionListener<ACTION> function
void
useActionListener<ACTION>(
- BlocActionMixin<
ACTION, Object> actionMixin, - OnActionCallback<
ACTION> onAction, { - ActionListenerCondition<
ACTION> ? actionWhen,
Calls callback function onAction
each time, when new action is dispatched from BlocBase
with BlocActionMixin, ActionCubit or ActionBloc
Implementation
void useActionListener<ACTION>(
BlocActionMixin<ACTION, Object> actionMixin,
OnActionCallback<ACTION> onAction, {
ActionListenerCondition<ACTION>? actionWhen,
}) {
useEffect(
() {
final subscription = actionMixin.actions.listen((action) {
if(actionWhen == null || actionWhen(actionMixin.previousAction, action)) {
onAction(action);
}
});
return subscription.cancel;
},
[actionMixin],
);
}