经过Flutter1.0 到 Flutter 2.0质的飞跃,在到如今的Flutter 2.5版本。Flutter也在日渐的强大。谷歌在2018年发布会的时候 对于状态管理 首推 bloc 到2019年 发布会 状态管理推荐使用provider,我相信在这里一定有很多追随 provider的开发者。因为我承认provider确实已经很出色,但如今我已成为get的忠实粉丝,我不评价哪种状态管理的优势和劣势,每个开发者都有自己的选择,而且每一个框架都十分出色。
我的Flutter:状态管理之路:flutter bloc -> provider -> get
为什么选择get
1.首先我们去pub.dev: pub.dev/packages 看一下 most likes,
get是在pub.dev 里最受欢迎的插件,其次是provider.
2. 我们在看看get支持什么
-
路由:Get.to(HomePage);(以前用的
fluro已经过时,夸页面传参很麻烦 get很方便,代码用起来很费事,get很省事) -
状态管理(支持三种模式 reactive响应式,update(观察者)statemixin() )个人观点认为是
bloc和provider的结合体,根据开发的不同的场景,可以随意切换。 -
get封装了
dialog对话框,bottomsheet底部谈框,和snackbar等组件,(牛逼点是不需要context)直接可以使用。 -
get具备share_preference的功能,可以存储轻量级的数据
GetStorage storgae = new GetStorage();
storage.write();
storage.read();
- 支持国际化 使用起来很容易 并且切换的时候只需要一行代码(此外支持随意切换light 和dart 并且支持切换各种theme)
Get.changeLocale(Locale("ch"));
-
支持网络请求 Getconnact (省去配置 http 库和 dio库的相关配置)
-
判断数据是否有效的使用GetUtils(里面有很多可以判断的例如 是否事邮箱 email,电话 phone 等)
-
get在plugin市场也有相关插件 下载Getx的使用,对于开发速度也有质的提升。
先总结这些,如果你是get的使用者哪里不足欢迎留言补充,一起进步。谢谢