From daec395f5f49bf66a318e207929de7a7f72a0cc7 Mon Sep 17 00:00:00 2001 From: Andrey Gubanov Date: Thu, 23 Apr 2020 18:34:16 +0300 Subject: [PATCH] Pass isLoaded as 4th returned value Why: it isn't clear that storageItem is actually null or it isn't loaded yet. --- src/index.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index 6285fcf..eeafeef 100644 --- a/src/index.js +++ b/src/index.js @@ -4,10 +4,12 @@ import { AsyncStorage } from 'react-native'; export default key => { const [storageItem, setStorageItem] = useState(null); + const [isLoaded, setIsLoaded] = useState(false); async function getStorageItem() { const data = await AsyncStorage.getItem(key); setStorageItem(data); + setIsLoaded(true); } function updateStorageItem(data) { @@ -27,5 +29,5 @@ export default key => { getStorageItem(); }, []); - return [storageItem, updateStorageItem, clearStorageItem]; + return [storageItem, updateStorageItem, clearStorageItem, isLoaded]; };