[flutter] inheritFromWidgetOfExactType은 더 이상 사용되지 않으며, dependOnInheritedWidgetOfExactType을 대신 사용하십시오.

Flutter 1.12가 출시 된 이후 다음 코드는 다음과 같습니다.

static MyInheritedWidget of(BuildContext context) {
  return context.inheritFromWidgetOfExactType(MyInheritedWidget) as MyInheritedWidget;
}

다음과 같이 경고합니다.

‘inheritFromWidgetOfExactType’은 더 이상 사용되지 않으며 사용해서는 안됩니다. dependOnInheritedWidgetOfExactType을 대신 사용하십시오. 이 기능은 v1.12.1 이후에 더 이상 사용되지 않습니다. 더 이상 사용되지 않는 멤버의 사용을 대체물로 바꾸십시오.

그러나 교체하려고하면 작동하지 않습니다.

static MyInheritedWidget of(BuildContext context) {
  return context.dependOnInheritedWidgetOfExactType(MyInheritedWidget) as MyInheritedWidget;
}

누군가 그것을하는 방법을 알고 있습니까? 감사!



답변

API가 약간 변경되었습니다.

이제 Type인수로 사용하는 대신 방법이 일반적입니다.

전에:

final widget = context.inheritFromWidgetOfExactType(MyInheritedWidget) as MyInheritedWidget;

후:

final widget = context.dependOnInheritedWidgetOfExactType<MyInheritedWidget>();

캐스트는 더 이상 필요하지 않습니다.


답변