getter '인스턴스'가 'Firestore'유형에 대해 정의되지 않았습니다.
안녕하세요, Firestore의 인스턴스를 선언하려고 할 때 그는이 오류를 제공합니다! Flutter를 최신 버전으로 업그레이드 한 후 일어나는 모든 일

final databaseReference = Firestore.instance;
나는 사용한다
cloud_firestore: ^0.14.0
답변
cloud_firestore
버전 0.14.0 부터 :
의 최신 버전 cloud_firestore
에서 클래스 Firestore
는 더 이상 사용되지 않습니다. 이제를 사용해야합니다 FirebaseFirestore
.
패키지 가져 오기 :
import 'package:cloud_firestore/cloud_firestore.dart'
인스턴스를 생성하려면 :
final databaseReference = FirebaseFirestore.instance;
Firebase의 변경 사항과 관련된 기타 링크 :
Firebase 앱 '[DEFAULT]'가 생성되지 않았습니다. Flutter 및 Firebase에서 Firebase.initializeApp ()을 호출하세요.
정의되지 않은 클래스 'FirebaseUser'
cloud_firestore 0.14.0 데이터 메소드 사용 방법
Cloud_firestore 버전 0.14.0이 다음과 같이 변경되었습니다. 패키지 가져 오기 :
import 'package:firebase_auth/firebase_auth.dart';
FirebaseUser는 더 이상 사용할 수 없습니다. Firebase 사용자를 선언하려면 다음을 사용하십시오. //사용자,
Firebase 인스턴스를 선언하려면 다음을 사용하세요.
final firebaseInstance= FirebaseFirestore.instance;
.document (uid)를 호출하는 대신 다음을 사용하십시오.
.doc(uid)
예를 들면 :
await db
.collection(Str.USERS_MESSAGE_LIST)
.document(uid)
.collection(Str.MESSAGE_COLLECTION)
.document("$itemId$sellerId")
.setData({...
될 것입니다:
await db
.collection(Str.USERS_MESSAGE_LIST)
.doc(uid)//note this
.collection(Str.MESSAGE_COLLECTION)
.document("$itemId$sellerId")
.set({//note this
다른 쿼리와 유사하게 .data ([]}와 반대로 .data () 사용 예 :
.startAfter([lastDocument.data[Str.ITEM_NAME]]).limit(perPage);
다음과 같이 다시 작성됩니다.
.startAfter([lastDocument.data()[Str.ITEM_NAME]]).limit(perPage);//note the () after data
사용자의 경우 : 사용 :
User user = FirebaseAuth.instance.currentUser;
기타 많은 변경 사항-공식 Firestore / Firebase 문서 참조