2017-10-29 1 views

답변

1

먼저 스냅을 배열로 변환해야합니다.

let arr = []; 
snapshot.forEach(childSnapshot => { 
    arr.push(childSnapshot.val()); 
}); 

let badge; 

arr.forEach((data, index) => { 
    if (arr.length > index + 1) { 
     badge = data.steps < steps && arr[index + 1].steps > steps ? data.name : ''; 
    } 
}) 

정말하고 싶은 것을 모르지만 조건이 충족 될 때마다 배지를 덮어 쓰게됩니다. 조건을 충족하는 이름이 필요하면 some을 사용해야합니다.

arr.some((data, index) => { 
    if (arr.length > index + 1) { 
     if (data.steps < steps && arr[index + 1].steps > steps) { 
      badge = data.name; 
      return true; 
     } 
    } 
    return false; 
}); 
관련 문제