这里有setState和提供者,您可以轻松、整洁地管理您的状态,那么为什么使用Riverpod呢?,我在在这里输入链接描述中看到了不同的例子,在使用riverpod时,我只发现每个示例使简单的事情变得更加复杂,当您使用Riverpod时,可以更容易地使用提供者或使用setState来完成相同的事情,并且在代码中管理状态时遵循一些很好的技术。
有一个名为hooks_riverpod的包,我不认为这个包的理由仅仅是为了支持您入侵了所有的statndard小部件--尽管有另一个版本的flutter_riverpod,但是使用钩子并不是一种有意的方法,可能对来自reactjs背景的人有帮助,但是颤振工程师们并没有这样设计,使用这些非标准的方法,你只是把自己困在了这些软件包的摆布之下。
继承的小部件只是通过管理应用程序、提供者和其他一些包(如Redux )来管理状态的标准方法--它们只是遵循相同的方法。
如果您可能使用过Riverpod或相关的软件包,请分享您的经验。
发布于 2022-08-24 06:06:35
这取决于项目和您喜欢如何处理状态。如果您可以使用setState管理/继承的小部件,则不需要使用其他部件。
我喜欢在这里分享一些参考资料,在河荚博士第二部分你可以找到
Provider,没有它的限制,Riverpod是受提供者启发的,但是解决了它的一些关键问题,例如支持相同类型的多个提供者;等待异步提供程序;从任何地方添加提供者,
riverpod
,仅限飞镖(无颤振)flutter_riverpod
,这是一种基本的方法,利用河床与颤振。你主要是把它用于国家管理。flutter_hooks
)来减少处理之类的样板代码,则可以使用hooks_riverpod
。而且,所有这些包都是由同一个作者雷米·鲁塞莱提供的
发布于 2022-08-24 06:08:32
好吧,关于一个好的政府管理解决方案有很多争论。
但在你的背景下,我想提几点。
为什么是Riverpod而不是提供者?
嗯,Riverpod是为了解决提供者的一些问题而建的,这在提供者中是不可能解决的。比如:
其他人..。有关更多信息,您可以参考Riverpod 这里的主页
而且,Riverpod & Provider的创建者Remi建议使用Riverpod而不是Provider。
第二,为什么不是setState?
好吧,您不能仅仅使用带有适当编程标准的setState来构建一个功能强大的应用程序。您将不得不在您的应用程序中不断地传递与Prop钻孔相关的数据。假设在父小部件下有5个小部件,而父小部件需要第五个子小部件中的数据。这只是一个正常的情况,在实际应用中可能会变得更糟。
关于钩子?
嗯,是的,这是很容易的反应,发展迅速跳到颤栗。但这并不是它发展的目的。它的主要目的是使用可重用的功能部件。因此,这方面的一个很好的例子是,当您使用动画控制器时,每次使用它时都必须维护它的生命周期。我不能在这里深入,因为你可以参考文档。
https://stackoverflow.com/questions/73467886
复制相似问题