sealed_flutter_bloc
集成 sealed_unions 的 flutter_bloc 状态管理扩展。
- 星标
- 78
- 复刻
- 12
- 最近推送(UTC)
- 2024年3月24日
- 项目状态
- 已归档
原始 README
以下为英文项目原文快照,最新内容请访问 GitHub。
⚠️ This package has been discontinued in favor of the built-in sealed class modifier introduced in Dart 3.0. ⚠️

flutter_bloc meets sealed_unions
Sponsors
Our top sponsors are shown below! [Become a Sponsor]
|
|
![]() Try the Flutter Chat Tutorial 💬 |
|
|
|
Quick Start
Extend UnionNImpl
class MyState extends Union4Impl<Initial, Loading, Success, Failure> {
static final unions = const Quartet<Initial, Loading, Success, Failure>();
MyState._(Union4<Initial, Loading, Success, Failure> union) : super(union);
factory MyState.initial() => MyState._(unions.first(Initial()));
factory MyState.loading() => MyState._(unions.second(Loading()));
factory MyState.success({required String data}) =>
MyState._(unions.third(Success(data: data)));
factory MyState.failure({required String error}) =>
MyState._(unions.fourth(Failure(error: error)));
}
class Initial {}
class Loading {}
class Success {
final String data;
Success({required this.data});
}
class Failure {
String error;
Failure({required this.error});
}
Use SealedBlocBuilder
class MyWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return SealedBlocBuilder4<MyBloc, MyState, Initial, Loading, Success,
Failure>(
builder: (context, states) => states(
(initial) => Text('Initial'),
(loading) => CircularProgressIndicator(),
(success) => Text('Success: ${success.data}'),
(failure) => Text('Failure: ${failure.error}'),
),
);
}
}
Additional Examples
More examples can be found at sealed_flutter_bloc_samples.
语言DartCMakeC++HTMLSwiftCKotlinObjective-C
分类
使用的依赖
依赖清单 5 项
- bloc
^8.0.0 - flutter
{"sdk":"flutter"} - flutter_bloc
^8.0.0 - sealed_unions
^3.0.3+1 - flutter_test开发依赖
{"sdk":"flutter"}
如何选择适合项目的代码仓?
先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。
- 通过仓库名、作者或描述搜索,再按技术分类缩小范围。
- 结合星标、复刻与最近推送比较项目;星标反映社区关注,不代表质量保证。
- 使用前在 GitHub 核对 README、许可证与 Issues。
来源与维护
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗



