从 Flutter 中的另一个提供者访问提供者

Access provider from another provider in Flutter

我正在使用 Remi Rousselet/dash-overflow.net.

provider 实现

我有一个名为 AuthProvider 的供应商,它处理用户身份验证方面的所有事情。作为其中的一部分,提供商存储用于发出 API 请求的 访问令牌

我想在另一个提供商 (ProductProvider) 中实现访问 REST API 的逻辑。在 ProductProvider 中,我需要 访问令牌 ,因为我必须将它包含在对 REST API.

的每个请求中

此外,我需要能够从 ProductProvider 触发 refreshAccessToken 方法(在 AuthProvider 中)。如果 access token 过期并且我需要在发出 API 请求之前刷新它。

从另一个提供商访问一个提供商的 methods/fields 的最佳做法是什么?

从 Provider 3.0.0 开始,您就有了专为该用例设计的 ProxyProvider。

您可以创建一个采用 AuthProvider 和 return ProductProvider 的 ProxyProvider。每次 authProvider 更改时,您都会获得一个使用新 AuthProvider 的新 ProductProvider。那样