Ionic4 アプリケーション内の Firestore データベース コレクションを一覧表示したいので、listCollection セクションのドキュメントを使用し、コードにサンプル コードを適用しました。
this.afs.firestore.listCollections().then(collections => { for (コレクションのコレクションを許可) { console.log(`ID のコレクションが見つかりました: ${collection.id}`); } });
これは私のコンストラクターです:
コンストラクター(プライベートルーター: Router, プライベート afs: AngularFirestore、 プライベート Fireauth: AngularFireAuth) { }
次のエラーが発生します: エラー TS2339: プロパティ 'listCollections' がタイプ 'Firestore' に存在しません。
listCollections 属性はオンライン ドキュメントに記載されているため使用できません...
実際には、Firestore JS SDKドキュメントに記載されているように、モバイル/ウェブ クライアント ライブラリを使用してコレクション リストを取得することはできません。
これは、Firestore データベースのルート コレクションだけでなく、Firestore ドキュメントのサブコレクションにも当てはまります。 ただし、質問で述べたように、Cloud Firestore Node.js クライアント APIを使用することは可能です。したがって、クラウド関数を使用してFirestore データベースのコレクションをリストし、このクラウド関数をフロントエンドから呼び出すことができます。このクラウド関数はアプリから呼び出すことになるため、呼び出し可能なクラウド関数を使用します。
クラウド関数コードリーリーフロントエンドコード
この呼び出し可能なクラウド関数を Angular アプリケーションから呼び出すには、AngularfireCloud Functions ドキュメント
に従ってください。リーリー
このメソッドは、JS SDK を使用して Cloud Firestore ドキュメントのすべてのサブコレクションを一覧表示する方法に関する次の記事からインスピレーションを得ていることに注意してください。
(免責事項: 私が著者です)