У меня уже есть код localStorage для моего веб-проекта.
Мой файл localStorage для сохранения и загрузки localStorage.
// localStorage.js
export const loadState = () => {
try {
localStorage.clear();
const version = localStorage.getItem("version");
// you can update the version to init the persist state
if (version !== "0.1") {
localStorage.clear();
localStorage.setItem("version", "0.1");
}
const serializedState = localStorage.getItem("state");
if (serializedState === null) {
return undefined;
}
return JSON.parse(serializedState);
} catch (err) {
return undefined;
}
};
export const saveState = state => {
try {
const serializedState = JSON.stringify(state);
localStorage.setItem("state", serializedState);
} catch (err) {
// Ignore write errors.
}
};
И файл моего хранилища для инициации хранилища избыточности.
// store.js
import persistReducer from "./reducers/persistReducer";
...
import { loadState, saveState } from "./localStorage";
const persistedState = loadState();
const store = createStore(
combineReducers({
persist: persistReducer,
...
}),
persistedState,
composeWithDevTools(applyMiddleware(thunk))
);
store.subscribe(
throttle(() => {
saveState({
persist: store.getState().persist
});
}, 1000)
);
ReactDOM.render(
<Provider store={store}>
...
</Provider>,
document.getElementById("root")
);
registerServiceWorker();
Теперь я хочу перенести этот код в AsyncStorage, как можно просто изменить этот код, чтобы настроить его для моего собственного проекта приложения?