自 Flutter 1.12 发布以来,我的以下代码:
static MyInheritedWidget of(BuildContext context) {
return context.inheritFromWidgetOfExactType(MyInheritedWidget) as MyInheritedWidget;
}
Run Code Online (Sandbox Code Playgroud)
警告如下:
'inheritFromWidgetOfExactType' 已弃用,不应使用。改用dependOnInheritedWidgetOfExactType。此功能在 v1.12.1 之后被弃用。尝试用替换来替换弃用成员的使用。
但是当我尝试更换它时,它不起作用:
static MyInheritedWidget of(BuildContext context) {
return context.dependOnInheritedWidgetOfExactType(MyInheritedWidget) as MyInheritedWidget;
}
Run Code Online (Sandbox Code Playgroud)
有人知道怎么做吗?谢谢!
Rém*_*let 171
API 略有变化。
现在Type,该方法不是将 a作为参数,而是通用的。
前:
final widget = context.inheritFromWidgetOfExactType(MyInheritedWidget) as MyInheritedWidget;
Run Code Online (Sandbox Code Playgroud)
后:
final widget = context.dependOnInheritedWidgetOfExactType<MyInheritedWidget>();
Run Code Online (Sandbox Code Playgroud)
请注意,不再需要演员表
InheritFromWidgetOfExactType方法已弃用,请改用dependentOnInheritedWidgetOfExactType方法。
替换示例:
之前:使用InheritFromWidgetOfExactType
static Name of(BuildContext context) {
return context.inheritFromWidgetOfExactType(Name); //here
}
Run Code Online (Sandbox Code Playgroud)
现在使用dependOnInheritedWidgetOfExactType(推荐)
static Name of(BuildContext context) {
return context.dependOnInheritedWidgetOfExactType<Name>(); //here
}
Run Code Online (Sandbox Code Playgroud)
现在该方法不再采用 a
Type作为参数,而是通用的。
简短<...>()而不是(...)
| 归档时间: |
|
| 查看次数: |
19585 次 |
| 最近记录: |