AsyncStorage
react-native내부에서 사용할 데이터베이스를 고민하다가 리액트 네이티브에서 제공해주는 간단한 AsyncStorage는 앱 전체적으로 사용할 수 있으며 비동기적이고 지속성있고 암호화 되어 있지 않는 모듈입니다.
ios에서는 네이티브 코드 뒤에서 위치하며 작은 크기는 연속적으로 저장하며 큰 데이터는 분산하여 저장합니다. 안드로이드에서는 락스디비 혹은 sqllite를 기반으로 하여 사용할 수 있습니다.
error가 있으면 error를 반환하고 또는 Promise를 반환하기도 합니다.
호출하기
import { AsyncStorage } from "react-native"
저장되어 있는 데이터의 키값 가져오기
AsyncStorage.getAllKeys();
array형태로 반환됩니다.
저장하기
문자열 데이터 밖에 저장이 안되기 때문에
JSON.stringify 를 통해서 저장 데이터가 Json형태일경우 문자열로 바꾸어 주어야합니다.
AsyncStorage.setItem(key, savingData);
한꺼번에 여러개 저장하기
데이터 불러오기
AsyncStorage.getItem(key)
데이터 여러개 불러오기
getAllkeys()와함께 사용하면 효율적이게 사용할 수 있습니다.
keys는 배열형태이며 stores가 key값과 value를 동시에 반환합니다.
AsyncStorage.getAllKeys((err, keys) => {
AsyncStorage.multiGet(keys, (err, stores) => {
stores.map((result, i, store) => {
// get at each store's key/value so you can work with it
let key = store[i][0];
let value = store[i][1];
});
});
});
데이터 바꾸기
AsyncStorage.mergeItem(dbKey, savingData)
키값을 통해서 저장되는 데이터를 바꿀 수 있습니다.
데이터 전체 지우기
AsyncStorage.clear()
출처: https://hoony-gunputer.tistory.com/entry/react-native-AsyncStorage-사용하기 [후니의 컴퓨터]
출처: https://hoony-gunputer.tistory.com/entry/react-native-AsyncStorage-사용하기 [후니의 컴퓨터]
출처: https://hoony-gunputer.tistory.com/entry/react-native-AsyncStorage-사용하기 [후니의 컴퓨터]