在创建Flutter应用程序时,我们使用Navigator在屏幕之间来回移动。
在我的应用程序中,我有一些类示例,希望与层次结构中的所有子小部件共享。
一个例子是数据库驱动程序类(有状态的),它拥有阅读/写实际数据库的所有功能。
当前-“main”函数正在初始化它,然后将结果对象传递给参与小部件的所有构造函数。
如何使它的行为类似于Navigator,以便它在全局范围内可用,而无需导入或通过构造函数链传递?
我很乐意接受任何其他的方法,尽管如此,如果你也能解决确切的问题-我将不胜感激:)
我打开了导航器、无状态和有状态小部件的代码,我试图搜索那个导航器示例的源代码,但没有找到任何有用的东西。
1条答案
按热度按时间2vuwiymt1#
您是否尝试过使用InheritedWidget?
来自文档:
小部件的基类,它可以有效地将信息传播到树中。
创建
DataBaseDriver
类作为继承的Widget类,使用context
作为DataBaseDriver.of(context)
在其子类中访问