颜色 BLoC 练习
用于重复
创建新的 Bloc 项目
- 新项目:创建新项目,添加 flutter_bloc,equatable
- Flutter 颜色容器:删除 runApp 下方的所有代码,创建一个新的 StatelessWidget,其中 MaterialApp 被 Container 包裹,并带有 FloatingActionButton
- Bloc 模板文件:使用 `lib/blocs/color/` 中的扩展名创建 event、state、bloc 文件
- BlocProvider:包裹 MaterialApp
- BlocBuilder:包裹 Container
配置 State、Event、Bloc 文件
- state:删除代码。创建新的 ColorState 类,它继承自 Equatable。创建一个 final Color color。导入 material
- 构造函数 - 改为 required
- equatable
- toString
- copyWith
- factory – ColorState.initial 返回 pink
- event:添加 ChangeColorEvent
- bloc
- ColorState.initial()
- ChangeColorEvent – 发出 ColorState amber
在 UI 上显示 Bloc 信息
- 将颜色设置为 Bloc state 的容器
从按钮更改 Bloc 状态
- 从 FloatingActionButton 向 Bloc 流添加新状态
修改 Bloc 以发出随机颜色
- 将回调函数组织到单独的方法中
- 发出随机颜色
