본문 바로가기
개발로그/ReactNative

다이어리 앱을 만들면서 연습해보자. - [D] realm.delete() / [U]

by 그리너리디밸로퍼 2023. 2. 19.

이전글

처음부터 다시 해보는 npx create-react-native-app dear-diary with ios 세팅! 나만의 프리셋

다이어리 앱을 만들면서 연습해보자. - 모듈설치 /Home / Write Screen

다이어리 앱을 만들면서 연습해보자. - mongoDB 연동(Realm open/스키마 정의 하기)

다이어리 앱을 만들면서 연습해보자. - Write 화면 구현하기

다이어리 앱을 만들면서 연습해보자.- [R] Realm.filtered() 로 조회하고 Home.js 화면 그리기 / write.js에서 저장된 데이터를 Listenning해서 반영하기

다이어리 앱을 만들면서 연습해보자. - context / realm.write() / 창 닫기

 

저장된 object 지우기 

 

realm.delete() 예제

realm.write(() => {
  // Delete the task from the realm.
  realm.delete(task1);
  // Discard the reference.
  task1 = null;
});

 

나는 공식문서를 봐도 이해가 안됨. ㅠ

이해한 바로는 task1이 있어야하는데, 이건 realm에서 지울 object를 조회해서 얻어내고, 

이것을 다시 realm.delete()할 때 파라미터로 넣어주면 된다. 

 

id로 objects 를 조회하는 방법 

const myTask = realm.objectForPrimaryKey("Task", 12342245); // search for a realm object with a primary key that is an int.

여기서 Task는 스키마에서 지정한 name 항목이고, 1234..는 ID 이다. 

deleting objects

클릭하면서 받은 id를 가지고 object를 지운다. 

  const onPress = (id) => {
    //delete object
    realm.write(() => {
      let feeling = realm.objectForPrimaryKey("Feeling", id);
      realm.delete(feeling);
      feeling = null;
    });
  };

 

 

728x90

댓글