Pengambil 'instance' tidak ditentukan untuk jenis 'Firestore'
Hai teman-teman ketika saya mencoba untuk mendeklarasikan contoh Firestore dia memberikan kesalahan ini! semua yang terjadi setelah saya meningkatkan Flutter saya ke versi terakhir

final databaseReference = Firestore.instance;
saya menggunakan
cloud_firestore: ^0.14.0
Jawaban
Mulai dari cloud_firestore
versi 0.14.0:
Di versi terbaru cloud_firestore
, kelas Firestore
tersebut tidak digunakan lagi sekarang Anda harus menggunakan FirebaseFirestore
, jadi lakukan saja:
Impor paket:
import 'package:cloud_firestore/cloud_firestore.dart'
Untuk membuat sebuah instance:
final databaseReference = FirebaseFirestore.instance;
Tautan Lain Mengenai Perubahan di Firebase:
Tidak ada Aplikasi Firebase '[DEFAULT]' yang telah dibuat - panggil Firebase.initializeApp () di Flutter dan Firebase
Kelas tidak ditentukan 'FirebaseUser'
cloud_firestore 0.14.0 cara menggunakan metode data
Cloud_firestore versi 0.14.0 memiliki perubahan berikut: impor paket:
import 'package:firebase_auth/firebase_auth.dart';
FirebaseUser tidak lagi tersedia. Untuk mendeklarasikan Pengguna Firebase, gunakan yang Berikut; // Pengguna,
Untuk mendeklarasikan instance Firebase, gunakan:
final firebaseInstance= FirebaseFirestore.instance;
alih-alih memanggil .document (uid), gunakan:
.doc(uid)
sebagai contoh:
await db
.collection(Str.USERS_MESSAGE_LIST)
.document(uid)
.collection(Str.MESSAGE_COLLECTION)
.document("$itemId$sellerId")
.setData({...
akan menjadi:
await db
.collection(Str.USERS_MESSAGE_LIST)
.doc(uid)//note this
.collection(Str.MESSAGE_COLLECTION)
.document("$itemId$sellerId")
.set({//note this
Mirip untuk kueri lain, gunakan .data () sebagai lawan .data ([]} mis
.startAfter([lastDocument.data[Str.ITEM_NAME]]).limit(perPage);
akan ditulis ulang sebagai:
.startAfter([lastDocument.data()[Str.ITEM_NAME]]).limit(perPage);//note the () after data
Untuk pengguna: gunakan:
User user = FirebaseAuth.instance.currentUser;
Dan banyak perubahan lainnya - lihat dokumentasi resmi Firestore / Firebase