no_bloc 0.11.0 no_bloc: ^0.11.0 copied to clipboard
Make bloc easy again! A simple and low boilerplate implementation of the bloc state management pattern. Includes extras to work with blocs like testing, monitoring and persistence.
import 'package:no_bloc/no_bloc.dart';
class BroadcastPrinter extends BlocMonitor {
@override
void onBroadcast(String blocName, state, {String? event}) {
print('[$blocName] broadcast: $state ($event)');
}
}
class CounterBloc extends Bloc<int> {
CounterBloc() : super(initialState: 0, monitor: BroadcastPrinter());
// event names are optional and only used for debugging purpose
void increment() => setState(value + 1, event: 'increment');
void decrement() => setState(value - 1, event: 'decrement');
}
void main() {
final bloc = CounterBloc();
bloc.state.listen((s) => print(s));
bloc.increment();
bloc.decrement();
}