0
私はカウンターのプロパティを試してみましたが、何もanglefire2でリストノード数を取得する方法は?
を取得していない、私はこのリストの= 3以上の場合であり、リストのキー数を、取得する必要があり、を
List
key1
item
key2
item
key3
item
をfirebase内のリストを持ちます
私はカウンターのプロパティを試してみましたが、何もanglefire2でリストノード数を取得する方法は?
を取得していない、私はこのリストの= 3以上の場合であり、リストのキー数を、取得する必要があり、を
List
key1
item
key2
item
key3
item
をfirebase内のリストを持ちます
最も基本的なアンギュラ2の方法は、キーを反復してカウンタをインクリメントすることです。
this.af.database.list(`list`)
.subscribe(keys => {
keys.forEach(key => this.counter = this.counter + 1)
})
このメソッドに有効な反対は、これらすべてのキーを反復処理すると、すべての子プロセスのデータが取得されることです。 Firebaseのshallow query uriパラメータを使用すると、子ノードからデータをロードせずにキーを反復処理できます。 Angular 2でこれを行うには、Httpモジュールを使用する必要があります。これはおおよその近似です。
import { Http, Response } from '@angular/http';
constructor(private af: AngularFire, private http: Http) { }
countKeys() {
this.http.get('https://your-database.firebaseio.com/keys.json?shallow=true')
.subscribe(response => {
Object.keys(response.json()).forEach(key => this.counter = this.counter + 1))
}
}