no_bloc 0.13.4 no_bloc: ^0.13.4 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(state + 1, event: 'increment');
void decrement() => setState(state - 1, event: 'decrement');
}
void main() {
final bloc = CounterBloc();
bloc.stream.listen((s) => print(s));
bloc.increment();
bloc.decrement();
}