inheritFromWidgetOfExactType tidak digunakan lagi, tergantungOnInheritedWidgetOfExactType sebagai gantinya

23

Sejak rilis Flutter 1.12 kode saya berikut:

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

peringatkan dengan yang berikut ini:

'inheritFromWidgetOfExactType' sudah usang dan tidak boleh digunakan. Gunakan dependOnInheritedWidgetOfExactType sebagai gantinya. Fitur ini sudah tidak digunakan lagi setelah v1.12.1 .. Cobalah mengganti penggunaan anggota yang sudah tidak digunakan lagi dengan penggantinya.

Tetapi ketika saya mencoba menggantinya, itu tidak berfungsi:

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

Apakah ada yang tahu cara melakukannya? Terima kasih!

Jose Jet
sumber

Jawaban:

77

API berubah sedikit.

Sekarang alih-alih mengambil Typeargumen sebagai, metode ini adalah generik.

Sebelum:

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

Setelah:

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

Perhatikan bahwa para pemain tidak lagi diperlukan

Rémi Rousselet
sumber
2
Terima kasih! Saya juga menemukannya di sini: github.com/flutter/flutter/blob/master/packages/flutter/test/…
Jose Jet