Flutter 状态管理,实际来说就是数据和视图的绑定和刷新;
这块对应到 H5,就比较好理解,这个概念也是从前端来到;
对应到 客户端,就是监听回调,类似事件总线(EventBus);
Provider 基本使用:
- 建议在 main 方法加上这段代码,防止热重载报错,如果还是报错就必须点击下 run 按钮了;
void main() {
WidgetsFlutterBinding.ensureInitialized();
Provider.debugCheckInvalidValueType = null;
......
}
- 创建 Model,继承 ChangeNotifier;
class ATheme with ChangeNotifier {
double textSize = 16;
int bgColor = 0xffff0000;
int textColor = 0xff666666;
void setTheme(int bgColor) {
textSize = 18;
this.bgColor = bgColor;
textColor = 0xff333333;
// 调用这个方法,通知所有监听
notifyListeners();
}
}
- 创建共享数据;
void main(