提供者与ViewModel

时间:2019-07-24 06:21:14

标签: mvvm flutter flutter-provider

详细了解ProviderChangeNotifier体系结构后,我发现它与旧的良好MVVM体系结构非常相似,其中Widget是视图,并由{ {1}},即ViewModel,由ChangeNotifierConsumer链接。

为什么这不叫Flutter的MVVM?这两种架构之间有什么实际区别?

2 个答案:

答案 0 :(得分:2)

提供者不是State-Management库,而是Dependency-Injection

使用提供程序,您可以实现几乎任何类型的状态管理解决方案,并使您的工作变得简单得多。

您可能听说过BLoC,在Flutter中,它是建议的体系结构,如今人们通常更喜欢带有Provider(DI)的BLoC(体系结构)。

BLoC架构与MVVM非常相似,不同之处在于BLoC更具响应性/现代性,也更适合Flutter的反应性/功能性结构。 但基本上,如果您不是events-state机制的忠实拥护者,那就可以说是一样的。是的,您的观察是正确的,我们通常会从根本上使用evolved-MVVM

答案 1 :(得分:2)

provider绝不是体系结构。这是一种成分。

使用ChangeNotifier时绝对没有强迫您使用Provider的情况。

您可以将其与Mobx,BLoC,Redux等...结合使用。