1. DataSnapshot.forEach() 를 사용하면 Datasnapshot의 하위 항목이 쿼리 순서대로 반복됨
child가 하위 항목임
const dbRef = database.ref('logs');
dbRef.on("value", (snapshot) => {
snapshot.forEach((child) => {
const object = child.val();
if (id == child.ref.key) {
if (object.pw == password) {
dbRef.child(id).remove();
}
else {
alert("잘못된 비밀번호");
}
}
});
});
명시적인 orderBy() 메서드를 사용하지 않으면 결과가 키순으로 반환됨
내 db에 'ups'가 존재하지 않아서 그냥 생성된 순으로 반환된 거 같아
const dbRef = database.ref('logs').orderByChild('ups').limitToLast(3);
dbRef.on("value", (snapshot) => {
snapshot.forEach((child) => {
const object = child.val();
let temp = `
<p><span><img class="pfp" , src="./image/minsun/pfp/${object.pfp}.png" , alt="pfp"></span>${object.content} (${object.name})</p>
`
$('#visit-comment').append(temp);
});
});
2. child 의 key값 = 내 db의 autogenerated id값을 얻는 방법을 알아냄
child.ref.key를 쓰면 알 수 있다
dbRef.on("value", (snapshot) => {
snapshot.forEach((child) => {
const object = child.val();
if (id == child.ref.key) {
if (object.pw == password) {
dbRef.child(id).remove();
}
else {
alert("잘못된 비밀번호");
}
}
});
});
3. window.location.reload(); 를 코드에 추가하면 페이지를 새로 불러온다
'개발일지' 카테고리의 다른 글
2023-10-20 Today I Learned (1) | 2023.10.20 |
---|---|
2023-10-19, Today I Learned (1) | 2023.10.19 |
2023-10-10, Today I Learned (0) | 2023.10.10 |
2023-10-07, Today I Learned (0) | 2023.10.07 |
2023-10-05, Today I Learned (0) | 2023.10.05 |