簡體   English   中英

TypeError: undefined is not an object(評估'ref.onSnapshot')

[英]TypeError: undefined is not an object (evaluating 'ref.onSnapshot')

Angular 和 Firebase Firestore 拋出 TypeError: undefined is not an object(評估 'ref.onSnapshot')

this.fbstore
      .collection(`claims`, ref => {
        let query:
          | firebase.default.firestore.CollectionReference
          | firebase.default.firestore.Query = ref;

          if(someValue === true) {
            return query.where('field1', '==', 20);
          }

          
      }).valueChanges();

問題是如果someValue為 false 則不返回查詢,添加 else 語句將解決問題或添加默認return query 如果您過於依賴 IDE、Typescript,則這些類型的錯誤非常耗時,通過此示例代碼很容易看出問題所在。

this.fbstore
      .collection(`claims`, ref => {
        let query:
          | firebase.default.firestore.CollectionReference
          | firebase.default.firestore.Query = ref;

          if(someValue === true) {
            return query.where('field1', '==', 20);
          }
       
         return query; // this will not run if someValue is true

      }).valueChanges();

暫無
暫無

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

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