随着 Flutter 的发展,这些年 Flutter 上的状态管理框架如“雨后春笋”般层出不穷,而近一年以来最受官方推荐的状态管理框架无疑就是 Riverpod
,甚至已经超过了 Provider
,事实上 Riverpod
官方也称自己为 “Provider
,但与众不同”。
Provider
本身用它自己的话来说是 “InheritedWidget
的封装,但更简单且复用能力更强。” ,而Riverpod
就是在Provider
的基础上重构了新的可能。
关于过去一年状态管理框架的对比可以看 《2021 年的 Flutter 状态管理:如何选择?》 , 本文主要是带你解剖 RiverPod
的内部是如何实现,理解它的工作原理,以及如何做到比 Provider
更少的模板和不依赖 BuildContext
。