第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么 firestore where 子句與 state 不起作用?

為什么 firestore where 子句與 state 不起作用?

月關(guān)寶盒 2022-08-18 10:46:27
我正在嘗試使用 react js 中的 where 子句從 firestore 中過濾文檔。但是,當(dāng)我在where子句中使用狀態(tài)變量時,它不起作用,但是當(dāng)我提供實際字符串時,它開始工作不工作firebase.firestore().collection('Partners')    .where("Email",'==',this.state.currentUser).get().then( querySnapshot => {      querySnapshot.forEach(doc => {        this.setState({          Theatre:doc.data().Theatre        })    })})加工firebase.firestore().collection('Partners')    .where("Email",'==',"test@test.com").get().then( querySnapshot => {      querySnapshot.forEach(doc => {        this.setState({          Theatre:doc.data().Theatre        })    })})任何幫助將不勝感激。謝謝。編輯我甚至試過了,它正在成真。然而,where 子句不適用于狀態(tài)變量console.log(this.state.currentUser==='test@test.com')
查看完整描述

2 回答

?
慕尼黑5688855

TA貢獻1848條經(jīng)驗 獲得超2個贊

可能是狀態(tài)變量有問題,如異步效應(yīng)或任何其他可能的原因。setState


確保狀態(tài)變量具有值。為了保證安全,請在以下條件下運行此函數(shù):currentUserif


if(this.state.currentUser){

 firebase.firestore().collection('Partners')

     .where("Email",'==',this.state.currentUser).get().then( querySnapshot => {

       querySnapshot.forEach(doc => {


         this.setState({

           Theatre:doc.data().Theatre

         })


     })

 })

}

對于調(diào)試,請嘗試通過控制臺記錄它。


查看完整回答
反對 回復(fù) 2022-08-18
?
RISEBY

TA貢獻1856條經(jīng)驗 獲得超5個贊

React 狀態(tài)是異步的,您確實會在控制臺中獲取狀態(tài)值,但是當(dāng)運行 firestore 查詢時,因為它也是異步的,因此您的狀態(tài)以某種方式被覆蓋,或者您的頁面正在刷新并再次設(shè)置狀態(tài)。

我遇到了同樣的問題,然后我檢查了我的頁面是否被刷新,并且即使我在控制臺中獲得了它,我也丟失了我設(shè)置的狀態(tài).log(),但是當(dāng)我的消防商店運行查詢時,那里沒有狀態(tài)。

您需要在此處提供完整的代碼,以便我們查看它。


查看完整回答
反對 回復(fù) 2022-08-18
  • 2 回答
  • 0 關(guān)注
  • 115 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號