【问题标题】:Updating provider class from outside widget从外部小部件更新提供程序类
【发布时间】:2020-01-13 14:16:36
【问题描述】:

我是 Flutter 的新手,我正在使用提供程序包进行状态管理,我有一个典型的场景,即消息作为事件来,并且处理此事件是在单独的类中编写的,一旦消息到达,我必须更新在其他小部件正在侦听的提供程序类中定义的消息列表 现在如何从事件发生的类更新提供者类中的消息列表? (我不能使用 provider.of(context) 因为它是一个普通的类,我无权访问 buildcontext )

我已尝试创建提供程序类的新类,然后更新消息列表,但由于某种原因,它正在创建提供程序类的不同实例

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    Provider 是一个依赖注入包,它专门使用小部件树(即构建上下文)来传递类的实例。如果您无权访问构建上下文,则无法获取实例。

    相反,您将希望使用 get_itflutter_bloc 之类的东西来进行不需要构建上下文的状态管理。或者,您可以将发出事件的类更改为单例。

    【讨论】:

    • 非常感谢,为类发出事件创建单例对象解决了我的问题
    猜你喜欢
    • 1970-01-01
    • 2023-02-14
    • 2021-08-17
    • 1970-01-01
    • 2020-11-23
    • 2021-02-20
    • 2021-11-22
    • 2021-07-18
    • 2021-01-22
    相关资源
    最近更新 更多