在 flutter 中使用 ancestorInheritedElementForWidgetOfExactType
Using ancestorInheritedElementForWidgetOfExactType in flutter
我在上面的 InheritedWidget
中有一个聊天对象到我的应用程序的根小部件。我想在 initState
内访问此对象以设置子窗口小部件的初始状态。我有以下代码:
void initState() {
super.initState();
final inheritedWidget = context.ancestorInheritedElementForWidgetOfExactType(MyInheritedWidget).widget;
inheritedWidget.chat.someFunction();
}
我收到一条错误消息:
"The getter 'chat' isn't defined for the class 'InheritedWidget'
我是不是用错了,你怎么用的?
你必须先施放widget
:
final inheritedWidget = context.ancestorInheritedElementForWidgetOfExactType(MyInheritedWidget).widget as MyInheritedWidget;
我在上面的 InheritedWidget
中有一个聊天对象到我的应用程序的根小部件。我想在 initState
内访问此对象以设置子窗口小部件的初始状态。我有以下代码:
void initState() {
super.initState();
final inheritedWidget = context.ancestorInheritedElementForWidgetOfExactType(MyInheritedWidget).widget;
inheritedWidget.chat.someFunction();
}
我收到一条错误消息:
"The getter 'chat' isn't defined for the class 'InheritedWidget'
我是不是用错了,你怎么用的?
你必须先施放widget
:
final inheritedWidget = context.ancestorInheritedElementForWidgetOfExactType(MyInheritedWidget).widget as MyInheritedWidget;