커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
왜 상태변경을 해야 UI가 바뀌는지 잘 이해가 안갑니다.
[왕초보] 나만의 수익성 앱, 앱개발 종합반 v5
4주차
북마크
신*일
댓글
3
추천
0
조회수
13
조회수
13
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


5번숙제 관련 질문입니다.

remove()를 하면 realtime Datebase에서 해당 데이터가 삭제됩니다.

그럼 setTip()을 구지 안해도 되는거 아닌가요?


왜 상태변경을 해야 UI가 바뀌는지 잘 이해가 안갑니다.





작성한 코드 및 에러 메세지

 const remove = async (cidx) => {

    let userUniqueId;

    if(isIOS){

    let iosId = await Application.getIosIdForVendorAsync();

      userUniqueId = iosId

    }else{

      userUniqueId = await Application.androidId

    }

 

    console.log(userUniqueId)

    firebase_db.ref('/like/'+userUniqueId+'/'+cidx).remove().then(function(){

     Alert.alert("찜 해제");

     //내가 찝 해제 버튼을 누른 카드 idx를 가지고

     //찝페이지의 찜데이터를 조회해서

     //찜해제를 원하는 카드를 제외한 새로운 찜 데이터(리스트 형태!)를 만든다

     let result = tip.filter((data,i)=>{

      return data.idx !== cidx

     })

     //이렇게 만들었으면!

     //LikePage로 부터 넘겨 받은 tip(찜 상태 데이터)를

     //filter 함수로 새롭게 만든 찜 데이터를 구성한다!

     console.log(result)

     setTip(result)

 

    })

     .catch(function (error) {

            console.log("Remove failed: " + error.message)

          })

    

   }


취소
 공유
취소
댓글 0
댓글 알림
나의얼굴