Firebaseデータスナップショットからキーを取得するにはどうすればよいですか?



How Get Key From Firebase Data Snapshot



解決:

あなたはこのようなことをすることができます:

var key = Object.keys(snapshot.val())[0];

参照:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/keys



Object.keys()メソッドは、for ... inループによって提供されるのと同じ順序で、指定されたオブジェクト自体の列挙可能なプロパティの配列を返します(違いは、for-inループがプロトタイプチェーンのプロパティを次のように列挙することです。良い)。


リアルタイムデータベース



このためにあなたは簡単に使うことができます: snapshot.key

スナップショット= firebase.database.DataSnapshot

this.app.database()。ref( '/ data /').on('value'、function(snapshot){const id = snapshot.key; // ---------- OR-- -------- // const data =スナップショット.val()|| null; if(data){const id = Object.keys(data)[0];}});

ファイヤーストア



snapshot.id

スナップショット= firebase.firestore.DocumentSnapshot

this.app.firestore()。collection( 'collection')。doc( 'document')。onSnapshot(function(snapshot){const id = snapshot.id; // ---------- OR- --------- // const data = snapshot.data()|| null; if(data){const id = Object.keys(data)[0];}}); 

camden_kidと同様に、私はObject.keys(arr)、ただし3行:

var arr =スナップショット.val(); var arr2 = Object.keys(arr); var key = arr2 [0]; console.log(key)// -KiBBDaj4fBDRmSS3j0r