← Ringkasan modul Storage (alur impor & beda nama)
AsyncStorage — key–value lokal
Implementasi di NexaJS: assets/modules/Storage/asyncstorage.js membungkus
@react-native-async-storage/async-storage dengan serialisasi JSON. Di entry bundel diekspor sebagai
AsyncStorage (bukan nama kelas Storage dari HTTP).
Impor yang disarankan
import { AsyncStorage } from "NexaJS";
await AsyncStorage.setItem("userData", { id: 1, name: "A" });
const user = await AsyncStorage.getItem("userData");
await AsyncStorage.removeItem("userData");
Template exsampel exsampel/Storage.js memakai import { Storage } from "../package" dan
helper UserStorage, AppSettings, DataCache — pola yang sama; sesuaikan
agar package Anda mengarah ke re-export AsyncStorage atau alias
Storage untuk key–value saja.
Metode utama
setItem(key, value)— menyimpan objek/array (di-JSON.stringify).getItem(key)— mengembalikan nilai ter-JSON.parseataunull.removeItem(key),clear(),getAllKeys(),multiGet(keys).
UserStorage (exsampel)
saveUserData(userData)— kunciuserData.getUserData()— baca ataunull.clearUserData()— alur logout.
AppSettings (exsampel)
saveTheme(isDarkMode)/getTheme()— objek{ isDarkMode }, default temafalse.saveLanguage(language)/getLanguage()— default"id".
DataCache (exsampel)
Kunci cache_{key} dengan payload { data, timestamp, expirationInMinutes }.
getCache mengembalikan null jika kedaluwarsa dan menghapus entri.
clearAllCache memfilter kunci berawalan cache_.
Praktik
- Token sensitif: pertimbangkan secure store, bukan hanya AsyncStorage.
- Tangani error di pemanggil; helper contoh mengembalikan boolean / null aman.
- Hindari payload sangat besar — memengaruhi waktu baca di perangkat lambat.