const remove = () => {
const user_id = Constants.installationId;
firebase_db.ref('/like/'+user_id+'/'+content.idx).remove().then(function(){
Alert.alert("삭제 완료");
// navigation.navigate('LikePage')
reload()
})
}
삭제기능
expo의 Constants를 이용하여 고유 설치 ID넘버와 컨텐츠의 ID를 받아서 해당하는 팁을 삭제해주는 코드이다.
const like = () => {
// like 방 안에
// 특정 사용자 방안에
// 특정 찜 데이터 아이디 방안에
// 특정 찜 데이터 몽땅 저장!
// 찜 데이터 방 > 사용자 방 > 어떤 찜인지 아이디
const user_id = Constants.installationId;
firebase_db.ref('/like/'+user_id+'/'+ tip.idx).set(tip,function(error){
console.log(error)
Alert.alert("찜 완료!")
});
}
추가기능
expo의 Constants를 이용하는것과 고유넘버를 받는것 모두 동일하며 remove.then 대신에 set으로 tip을 설정하고 그 과정에서 error을 캐치해주는 모습이다.
timeout(()=>{
firebase_db.ref('/tip').once('value').then((snapshot) => {
console.log("파이어베이스에서 데이터 가져왔습니다!!")
let tip = snapshot.val();
setState(tip)
setCateState(tip)
getLocation()
setReady(false)
});
조회기능
사용할 원래의DB에서 데이터를 읽어서 tip에 저장해줍니다. 또 로딩후 로딩상태를 해제하여 해당하는 페이지를 띄우는 역할입니다.