首页 > 解决方案 > Flutter 中 ViewModelProvider 中的 onModelReady 和 builder 是什么?

问题描述

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),
    ),
  ),
);}}

标签: flutterdartflutter-provider

解决方案


根据文档:

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

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

检查文档:

https://pub.dev/packages/stacked

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


推荐阅读