【发布时间】:2021-05-29 19:46:55
【问题描述】:
我一直在尝试将我的旧项目从 provider 迁移到 riverpod。在riverpod 中使用Provider.value 相当于什么?我想要做的是,在身份验证后,我希望能够从所有地方访问用户,因此我使用 Provider.value 将用户向下传递到小部件树,如下所示:
Provider<AuthUser>.value(value: user);
【问题讨论】:
我一直在尝试将我的旧项目从 provider 迁移到 riverpod。在riverpod 中使用Provider.value 相当于什么?我想要做的是,在身份验证后,我希望能够从所有地方访问用户,因此我使用 Provider.value 将用户向下传递到小部件树,如下所示:
Provider<AuthUser>.value(value: user);
【问题讨论】:
Riverpod 的主要优点是它没有附加到小部件树,因此不需要使用 .value ,如果提供者已经存在于另一条路线中,它将使用它,作为一个更好的例子,你需要上传一些关于您尝试编写更具体答案的代码
【讨论】:
我有一个类似的用例。您可以做的是拥有一个 StateProvider,一旦用户登录,您就可以使用用户数据更新此提供者的状态。从现在开始,其他提供者和小部件可以通过使用例如获取此提供者的状态来获取用户。观看。
【讨论】: