第 4 步:在组件中消费数据——选择正确工具解决“无效重建”痛点
# 使用 Consumer 来监听 Counter 的变化 # 泛型
{@override Widget build{return Scaffold>。),body:,);},),),floatingActionButton:;counter.increment;}),tooltip:'Increment'。child:
💡进阶用法与常用方法
-
Consumer vs Provider.of:
-
Consumer:推荐在 build 方法中使用,能精准控制重建范围,避免不必要 UI 刷新。
\
-
TypeOf T:仅用于触发方法,例如按钮 onPressed 回调。设置 listen:false 可以避免因模型重建导致该 Widget 重建。其实,
\
-
T:等同于 context.watch
会监听变化。应谨慎使用,以免导致父组件大范围重建。
\
\
\
-
MultiProvider:管理多个 Provider 更清晰可维护
\
CartModel),ChangeNotifierProvider=>UserModel),Provider=>SomeService)。],child:,)
-
Selector:按需刷新,提高性能
Selector=>counter.count,builder:{return Text;},)



