20210427

react native asyncstorage

React Native AsyncStorage 사용법

어싱크스토리지는 개발을 할 때 변수값을 저장해두는 공간이라고 생각하면 편할 것 같습니다!
근데 어싱크스토리지 말고도 변수값은 저장은 해둘 수 있는 곳이 많죠. 예를 들어 컴포넌트의 stateredux 등으로 저장이 가능합니다.

그렇다면, 어싱크스토리지는 왜 쓰는가?

어싱크스토리지는 로컬 데이터베이스 저장소라고 생각하시면 다가가기 쉬울 것 같습니다. 앱이 꺼져도 데이터베이스는 남아있듯이, 똑같이 어싱크스토리지에 값을 저장하고 앱을 꺼도 데이터가 저장되어 있는 개념입니다.

참고 문서

사용법

먼저, npm을 설치합니다. 어떤 패키지를 선택할지는 개발자의 선택에 따라 달라집니다. 아래는 예시로 사용된 코드입니다:

값 저장하기


AsyncStorage.setItem('id', 'userId0', () => {
  console.log("저장되었습니다!");
});
  

값 불러오기


AsyncStorage.getItem('id', getId => {
  console.log(getId); 
});
  

위 코드에서 setItemgetItem만 알고 있어도 유용하게 사용할 수 있습니다.

JSON 데이터 저장하기

JSON 형태의 데이터를 저장할 때는 JSON.stringify를 사용하여 문자열로 변환해야 합니다.

데이터 바꾸기


AsyncStorage.mergeItem('key', 'newData');
  

키값을 통해서 저장된 데이터를 바꿀 수 있습니다.

데이터 전체 지우기


AsyncStorage.clear(); // 복구 불가
  

위 코드를 사용하면 저장된 모든 데이터가 삭제됩니다. 주의할 점은 복구가 불가능하다는 점입니다.