From 8bc742304538aa7ac8b5e5c40c031b95cef16d29 Mon Sep 17 00:00:00 2001 From: Sam Date: Fri, 4 Sep 2015 10:43:26 +1000 Subject: [PATCH] UX: On first load of notifications don't use cached data --- .../discourse/mixins/stale-local-storage.js.es6 | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/app/assets/javascripts/discourse/mixins/stale-local-storage.js.es6 b/app/assets/javascripts/discourse/mixins/stale-local-storage.js.es6 index 0d4baae0ca2..d8816c981e6 100644 --- a/app/assets/javascripts/discourse/mixins/stale-local-storage.js.es6 +++ b/app/assets/javascripts/discourse/mixins/stale-local-storage.js.es6 @@ -1,6 +1,8 @@ import StaleResult from 'discourse/lib/stale-result'; import { hashString } from 'discourse/lib/hash'; +var skipFirst = true; + // Mix this in to an adapter to provide stale caching in our key value store export default { storageKey(type, findArgs) { @@ -11,10 +13,14 @@ export default { findStale(store, type, findArgs) { const staleResult = new StaleResult(); try { - const stored = this.keyValueStore.getItem(this.storageKey(type, findArgs)); - if (stored) { - const parsed = JSON.parse(stored); - staleResult.setResults(parsed); + if (!skipFirst) { + const stored = this.keyValueStore.getItem(this.storageKey(type, findArgs)); + if (stored) { + const parsed = JSON.parse(stored); + staleResult.setResults(parsed); + } + } else { + skipFirst = false; } } catch(e) { // JSON parsing error