Redux-Persist storage engine for React Native file system
npm install redux-persist-fs-storage> Redux Persist storage engine for React Native file system
Inspired by redux-persist-filesystem-storage, this module works as adapter between react-native-fs and redux-persist.
```
yarn add react-native-fs redux-persist-fs-storage
This will install react-native-fs as dependency. So make sure to link it natively:
``
react-native link react-native-fs
See react-native-fs's documentation for details.
Both Redux Persist v4 and v5 are supported.
Redux Persist v5:
`js
import { persistStore, persistReducer } from 'redux-persist';
import FSStorage from 'redux-persist-fs-storage';
const persistConfig = {
key: 'root',
keyPrefix: '', // the redux-persist default is persist: which doesn't work with some file systems
storage: FSStorage(),
};
const persistedReducer = persistReducer(persistConfig, reducer);
const store = createStore(persistedReducer);
const persistor = persistStore(store);
`
Redux Persist v4:
`js
import { persistStore } from 'redux-persist';
import FSStorage from 'redux-persist-fs-storage';
const persistor = persistStore(store, { storage: FSStorage() });
`
The default storage location is a folder called reduxPersist in the document directory for your app on the device. You can specify folder for persistor:
`js
import { persistStore } from 'redux-persist';
import FSStorage, { CacheDir } from 'redux-persist-fs-storage';
const cachePersistor = persistStore(store, {
storage: FSStorage(CacheDir, 'myApp'),
});
`
This will create myApp` folder in cache storage for iOS and Android devices. You may create multiple persistors on different directories.