使用技巧
读取
provider
中的数据
通过context.watch
、context.read
、context.select
实现:
context.watch<T>()
,使widget
能够监听泛型T
上发生的改变。
context.read<T>()
,直接返回T
,不会监听改变。
context.select<T, R>(R cb(T value))
,允许widget
只监听T上的一部分R
。
context.read<T>()
方法,不会在值变化的时候rebuild
widget
,不能用在[StatelessWidget.build]
和[State.build]
里调用。context.watch<T>()
方法,只能用在[StatelessWidget.build]
和[State.build]
里调用。