From e531c780798b84215160cf44a2f0aed971c6cf97 Mon Sep 17 00:00:00 2001 From: Roger Braun Date: Sun, 9 Apr 2017 16:30:21 +0200 Subject: [PATCH] Only persist state after we loaded one. --- src/lib/persisted_state.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/lib/persisted_state.js b/src/lib/persisted_state.js index a47ad7d59b..26a9d0e4da 100644 --- a/src/lib/persisted_state.js +++ b/src/lib/persisted_state.js @@ -3,6 +3,8 @@ import objectPath from 'object-path' import localforage from 'localforage' import { throttle, each } from 'lodash' +let loaded = false + const defaultReducer = (state, paths) => ( paths.length === 0 ? state : paths.reduce((substate, path) => { objectPath.set(substate, path, objectPath.get(state, path)) @@ -15,7 +17,11 @@ const defaultStorage = (() => { })() const defaultSetState = (key, state, storage) => { - return storage.setItem(key, state) + if (!loaded) { + console.log('waiting for old state to be loaded...') + } else { + return storage.setItem(key, state) + } } export default function createPersistedState ({ @@ -44,6 +50,7 @@ export default function createPersistedState ({ merge({}, store.state, savedState) ) } + loaded = true }) subscriber(store)((mutation, state) => {