Skip to content

Instantly share code, notes, and snippets.

@aboozaid
Created April 25, 2023 03:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save aboozaid/24a8f40091e8bc29b05a6fc5b3f5f070 to your computer and use it in GitHub Desktop.
Save aboozaid/24a8f40091e8bc29b05a6fc5b3f5f070 to your computer and use it in GitHub Desktop.
use react-native-mmkv with parse-js sdk
import {MMKV} from 'react-native-mmkv';
const storage = new MMKV();
const AsyncStorage = {
setItem: (key: string, value: string, callback: (err: unknown, res: string) => void) => {
storage.set(key, value);
callback(null, value);
},
getItem: (key: string, callback: (err: unknown, res: string | null) => void) => {
const value = storage.getString(key) as string | null;
callback(null, value);
},
removeItem: (key: string, callback: (err: unknown) => void) => {
storage.delete(key);
callback(null);
},
getAllKeys: (callback: (err: unknown, res: Array<string>) => void) => {
const keys = storage.getAllKeys();
callback(null, keys);
},
multiGet: (keys: string[], callback: (err: unknown, res: Array<Array<string>>) => void) => {
const values = keys
.filter(k => storage.contains(k))
.map(k => [k, storage.getString(k) as string]);
callback(null, values);
},
multiRemove: (keys: string[], callback: (err: unknown) => void) => {
keys.map(k => storage.delete(k));
callback(null);
},
};
Parse.initialize(...);
Parse.serverURL = ...;
Parse.setAsyncStorage(AsyncStorage);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment