Javascript 基于子属性匹配获取关键帧

Javascript 基于子属性匹配获取关键帧,javascript,firebase,Javascript,Firebase,因此,如果我在firebase中有一个如下结构的树,那么我如何获取唯一的键,其中Name==“Employee 1”,这应该返回键“LJrWJlgUPWUaPQx0ok09CswIkXg2” 如果我正确理解了你的问题,这应该可以做到: firebase.database().ref('Users') .orderByChild('name') .equalTo('Employee 1') .limitToFirst(1) .once('value', snap => {

因此,如果我在firebase中有一个如下结构的树,那么我如何获取唯一的键,其中Name==“Employee 1”,这应该返回键“LJrWJlgUPWUaPQx0ok09CswIkXg2”


如果我正确理解了你的问题,这应该可以做到:

firebase.database().ref('Users')
  .orderByChild('name')
  .equalTo('Employee 1')
  .limitToFirst(1)
  .once('value', snap => {
    let key = Object.keys(snap.val())[0]; // LJrWJlgUPWUaPQx0ok09CswIkXg2
    let user = snap.child(key).val(); // the whole user object
  });

这是一个将查找具有指定名称的第一个用户的查询。如果您有多个同名用户,它将只返回其中一个,因此由您来确保不会发生这种情况。向上投票和复选标记将帮助其他人知道它也起作用:)
firebase.database().ref('Users')
  .orderByChild('name')
  .equalTo('Employee 1')
  .limitToFirst(1)
  .once('value', snap => {
    let key = Object.keys(snap.val())[0]; // LJrWJlgUPWUaPQx0ok09CswIkXg2
    let user = snap.child(key).val(); // the whole user object
  });