Skip to content
Redux Persist storage engine for React Native file system
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
flow-typed/npm Fix Flow errors Sep 27, 2017
.flowconfig Fix Flow errors Sep 27, 2017
.gitignore Add .gitignore Aug 31, 2017
LICENSE Initial commit Aug 31, 2017
README.md Update README.md (#6) Aug 31, 2018
index.js Format code Jan 10, 2018
package.json v1.2.2 Jun 30, 2018
yarn.lock Upgrade dependencies Jun 28, 2018

README.md

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.

Install

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.

Usage

Both Redux Persist v4 and v5 are supported.

Redux Persist v5:

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:

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:

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.

You can’t perform that action at this time.