[英]Data is not being saved at Firebase nor is being retrieved from the firebase
[英]firebase emulator data not saved and retrieved from some cache
從 firestore 模擬器獲取數據工作正常,手動添加文檔。
export const getMaterials = async (companyID: string): Promise<Material[]> => {
const materials = await getDocs(collection(db,
`${COMPANIES}/${companyID}/materials`))
return materials.docs.map<Material>((doc) => <Material>{ id: doc.id, ...doc.data() })
}
保存也返回成功但是數據沒有顯示在模擬器UI中但是從上面的function返回模擬器的記錄和新添加的記錄。
刷新應用程序和模擬器后數據消失。
export const setMaterial = async (
companyID: string,
id: string
): Promise<any> => {
const docData = {
companyID: companyID,
id: id,
name: name
}
const ret = await addDoc(collection(db, `${COMPANIES}/${companyID}/materials`),
docData)
return ret
}
從模擬器中刪除文檔繼續從 getMaterial function 返回。再次直到重新啟動應用程序和模擬器。
知道這些來賓文檔保存在哪里以及為什么不保存到模擬器中。
相關: Firebase Firestore Emulator UI 未顯示任何數據,但應用查詢中正在返回數據
const config = {
apiKey: 'AIz....3Jk1',
projectId: 'local',
authDomain: 'app.localhost.dev',
}
將 projectId 從本地更改為從命令獲取的當前項目
firebase projects:list
解決了問題
我遇到過同樣的問題。 我的碰巧是相似但有點不同的問題。
問題
我的應用程序是project-1的一部分,Firestore 是project-2的一部分。
我的愚蠢錯誤是試圖初始化 Firestore - getFirestore()
- 使用project-1的配置將其連接到模擬器 - connectFirestoreEmulator
。 這導致了 OP 描述的相同問題。
長話短說
如果您通過getFirestore()
連接到正確的 Firestore,請檢查兩次。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.