【问题标题】:Accessing environment variables in non widget classes in flutter在flutter中访问非小部件类中的环境变量
【发布时间】:2018-10-01 13:33:33
【问题描述】:

我已经实现了基于构建环境(生产/开发)的环境变量。环境配置作为 InheritedWidget 向下传递到小部件树。我能够访问树下的这些环境变量。 (参考这篇文章-https://cogitas.net/creating-flavors-of-a-flutter-app/

不过,我还创建了一个 API 帮助程序类来进行 API 调用。我想访问该类中的一个环境变量(BASE_URL)。 由于此类不是小部件树的一部分,因此我无法访问它。

如何在非widget类中访问这些环境变量?

【问题讨论】:

    标签: dart flutter


    【解决方案1】:

    答案很简单:将您的 API 助手包装到一个小部件中。

    您可以创建一个自定义 StatefulWidget,通过将“环境”作为参数传递来实例化您的 API 助手。然后使用小部件上下文公开该助手。如果有意义的话,也许可以使用 InheritedWidget,或者可能只是使用 context.ancestorStateOfType

    【讨论】:

    • 谢谢。我也在使用相同的方法。
    猜你喜欢
    • 2020-09-26
    • 2020-09-30
    • 2022-12-18
    • 2020-06-26
    • 2010-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多