Flutter 中 ViewModelProvider 中的 onModelReady 和 builder 是啥?

Posted

技术标签:

【中文标题】Flutter 中 ViewModelProvider 中的 onModelReady 和 builder 是啥?【英文标题】:What is onModelReady and builder in ViewModelProvider in Flutter?Flutter 中 ViewModelProvider 中的 onModelReady 和 builder 是什么? 【发布时间】:2021-04-03 00:01:06 【问题描述】:

provider_arhitecture 提供了一个小部件 ViewModelProvider,您可以将其与 ViewModel 连接。我不明白的一件事是 builder 和 onModelReady 之间有什么区别,就像这里的例子一样:

class HomeView extends StatelessWidget 

@override
Widget build(BuildContext context) 

return ViewModelProvider<HomeViewModel>.withConsumer(
  viewModelBuilder: () => HomeViewModel(),
  onModelReady: (model) => model.initialise(),
  builder: (context, model, child) => Scaffold(
    floatingActionButton: FloatingActionButton(
      onPressed: () 
        model.updateTitle();
      ,
    ),
    body: Center(
      child: Text(model.title),
    ),
  ),
);

【问题讨论】:

【参考方案1】:

根据文档:

onModelReady 在模型处于就绪状态后触发模型,类似于有状态小部件中的initState

builder 是使用存储在模型中的数据来构建 UI。

查看文档:

https://pub.dev/packages/stacked

https://pub.dev/packages/stacked#call-onmodelready-only-once

【讨论】:

您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。

以上是关于Flutter 中 ViewModelProvider 中的 onModelReady 和 builder 是啥?的主要内容,如果未能解决你的问题,请参考以下文章