From abaa07a82f5b5e2096074236e84d585be8bde3df Mon Sep 17 00:00:00 2001 From: Angelos Chalaris Date: Fri, 30 Aug 2019 19:12:47 +0300 Subject: [PATCH] Add scroll memory --- gatsby-browser.js | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/gatsby-browser.js b/gatsby-browser.js index ede8eb356..c373e118b 100644 --- a/gatsby-browser.js +++ b/gatsby-browser.js @@ -5,4 +5,26 @@ */ // You can delete this file if you're not using it -export { default as wrapRootElement } from './src/docs/state/ReduxWrapper' + +let locationScrollTops = []; + +const onPreRouteUpdate = ({ location, prevLocation }) => { + try { + let scrollTop = document.querySelector('.content').scrollTop; + locationScrollTops[prevLocation.pathname] = scrollTop; + } + catch (e) {} +}; + +const onRouteUpdate = ({ location, prevLocation }) => { + console.log(locationScrollTops) + try { + if (locationScrollTops[location.pathname]) { + document.querySelector('.content').scrollTop = locationScrollTops[location.pathname]; + } + } + catch (e) { } +} + +export { default as wrapRootElement } from './src/docs/state/ReduxWrapper'; +export { onPreRouteUpdate, onRouteUpdate };