Это плохая практика, чтобы получить доступ к избыточному хранилищу непосредственно между перезагрузками страницы, чтобы получить доступ и сохранить состояние - PullRequest
0 голосов
/ 21 ноября 2018

Я хотел бы использовать код, который уже использую, немного по-другому.У меня есть критические данные, хранящиеся в состоянии, которое должно быть доступно сразу после перезагрузки страницы, иначе пользователи выйдут из системы и т. Д. Для достижения этого я использую такую ​​функцию

window.addEventListener('onbeforeunload', store.dispatch(setDataAfterBrowserRefresh()));

Хотя внутри этой функции,Я хотел бы иметь возможность получить доступ к состоянию, как это было / непосредственно перед перезагрузкой / обновлением страницы.(В настоящее время я просто перезагружаю все заново). Поэтому я спрашиваю, не стоит ли писать что-то подобное в моем app.jsx и другом файле:

app.jsx

export const store = createStore(
connectRouter(history)(rootReducer),
{},
composeEnhancers(
applyMiddleware(
routerMiddleware(history),
thunk))
);

BrowserRefreshHandlerFile.js

import { store } from '../app.jsx';

некоторый промежуточный код, а затем

store.getState().partOfStateIWantToAccess

Я привык получать доступ к хранилищу только с помощью подпорок внутри подключенных компонентов и с помощью диспетчеров действий ивсе это, а не "напрямую" в некотором коде js.

Любые комментарии и мысли приветствуются.

1 Ответ

0 голосов
/ 21 ноября 2018

Помимо того, что приложения React не должны быть перезагружены, я советую вам взглянуть на это: Как сохранить дерево состояний при обновлении при обновлении?

Существуетссылка на промежуточное ПО, поддерживающее перезагрузку вашего состояния.

...