首次運行時,React Firestore查詢未找到文檔
P粉463291248
P粉463291248 2023-09-12 10:49:36
0
1
681

我正在建立一個網路應用程序,用戶可以與醫生預約,我想防止用戶在同一時間和日期與其他用戶已經要求的同一醫生預約。我使用一個firestore資料庫來儲存預約資訊作為文件。 這是我的函數,用於處理檢查並將其推送到我的firebase資料庫:

    const addAppointment = async (date: Date | null, speciality: string | undefined) => {
      const appointmentsRef = collection(db, "appointments");
      const q = query(appointmentsRef, where("speciality", "==", speciality), where("date", "==", date))
      const docs = await getDocs(q);
      docs.forEach((doc: any) => {
        console.log(doc.data())
      })
      console.log(docs.docs.length)
      if (docs.docs.length === 0) {
        try{
          await addDoc(collection(db, "appointments"), {
            email: auth.currentUser?.email,
            date,
            speciality
          });}
          catch (err) {
            console.error(err);
          }
        return false
      }
        return true
    };

在頁面重新整理時,如果我嘗試預約已經被要求的預約,docs長度為0,我可以進行相同的預約。然而,如果我再次嘗試(不刷新),doc長度為1,而且沒有推送到資料庫。

P粉463291248
P粉463291248

全部回覆(1)
P粉237029457

我現在將日期欄位解析為字串,實際上是在比較字串而不是日期。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板