>

collectionGroup 를 사용하고 싶습니다  클라우드 기능으로 쿼리하고 firebase/app에서 가져 오는 경우에만 사용할 수있는 것으로 보입니다 :

import * as firebase from 'firebase/app';
const db = firebase.firestore();
...
const snap = await db.collectionGroup('comments').where('foo', '==', 'bar').get();

하지만 배포하려고하면

TypeError: firebase.firestore is not a function

다른 클라우드 기능에서는 항상 firebase-admin에서 가져 왔지만 typescript에 collectionGroup 가 없다고 알려줍니다  방법.

import * as admin from 'firebase-admin';
const db = admin.firestore();

현재 내 버전은 최신 버전이어야합니다 :

"firebase": "^6.2.4",
"firebase-admin": "^8.2.0",

왜 당신이 db 를 얻을 수 있는지 이해하는 것이 좋을 것입니다  'firebase-admin'또는 'firebase/app'의 인스턴스입니다. 왜 두 개의 별도 인스턴스가 있는지 이해가되지 않습니다.

  • 답변 # 1

    작동해야합니다 :

    import * as admin from 'firebase-admin'
    const db = admin.firestore()
    const snap = db.collectionGroup('comments').where('foo', '==', 'bar').get()
    
    

    와이즈 비즈  유형은 마지막 버전에서 지원됩니다

    collectionGroup 를 삭제하는 것이 좋습니다  다시 설치하십시오 (단순히 샘플을 확인하고 node_modules 에 아무런 문제가 없었습니다. ).

    "firebase-admin": "8.0.0"

관련 자료

  • 이전 c - 문자열의 ASCII를 얻는 방법
  • 다음 flutter - GestureDetector (또는 InkWell) 입력 영역을 경로로 어떻게 클리핑합니까?