簡體   English   中英

如何在反應中從 firestore 獲取特定 id 的數據?

[英]How do I get data on a specific id from firestore in react?

我試圖弄清楚如何從 Firestore 中僅從一個 ID 獲取數據。 單擊我的編輯按鈕時,我希望我的 React 網站路由到另一個頁面,在該頁面中,我的輸入字段填充了來自特定 id 的值。 單擊編輯按鈕后,我已經解決了如何從我的 url 中 firestore 的特定 id 中獲取我的 id。

如何僅從我單擊的特定 ID 中獲取數據/在 url 中彈出的相同 ID?

可以很好地獲得規格。 網址中的id。

但是當試圖從 firestore 中的特定 id 獲取所有數據時,我失敗了。 這是我失敗的代碼。

const _id = props.match.params.id;
console.log("Logged data in edit:", _id);

const ref = firebase.firestore().collection("suggestions").doc(_id); 

function getRestaurants() {
    ref.get().then(querySnapshot => setData((querySnapshot).data()))
   console.log(ref.data)
}

網址中的 ID 運行良好

我正在獲取數據,但我無法編寫/編輯輸入字段。

輸入字段中的數據

.doc().get()返回一個 querySnapshot,它返回一個 DocumentSnapshot,我不認為你的````(querysnopshot).data()``` 做你想要的。 如果沒有關於該片段的范圍/上下文的更多信息,很難說什么是有效的。 我假設 setData 已定義...某處?

此外, ref.data()不是一個東西- ref 不會被 .get() 方法更改或更新。 同樣, .get() 的結果(它不是查詢)在 .then() 之外不可用

我希望你至少需要:

const _id = props.match.params.id;
console.log("Logged data in edit:", _id);

const ref = firebase.firestore().collection("suggestions").doc(_id); 

function getRestaurants() {
    ref.get().then(DocumentSnapshot => {
       const docData = querySnapshot.data();
       setData(docData);
      console.log(docData);
   })
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM