sql >> Databáze >  >> NoSQL >> MongoDB

Browser Reload:Nevrátí se zpět na vybranou stránku, přejde na výchozí domovskou stránku - ReactJs

Při aktualizaci byste měli zachovat svůj stav redux v místním úložišti a při načítání aplikace inicializovat obchod z místního úložiště.

Příklad minimální trvanlivosti úložiště Redux:

Vytvořte "střední" komponentu, která bude zpracovávat přetrvávající aktualizace stavu na localStorage.

import React, { useEffect } from 'react';
import { useSelector } from 'react-redux];

const StorePersister = ({ children }) => {
  const state = useSelector(state => state);
  useEffect(() => {
    localStorage.setItem('myState', JSON.stringify(state));
  }, [state]);

  return children;
};

index - zabalte App komponentu s úložištěm persister.

import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';
import App from './components/App';
import StorePersister from './components/StorePersister';
import store from "./store";

ReactDOM.render(
  <Provider store={store}>
    <StorePersister>
      <App />
    </StorePersister>
  </Provider>,
  document.getElementById('root')
);

Inicializujte stav z místního úložiště. Pokud neexistuje klíč "myState" nebo analýza vrátí null pak prázdný objekt ({} ) bude použit jako záložní.

import { createStore, applyMiddleware, compose } from "redux";
import thunk from "redux-thunk";
import rootReducer from "./reducers";

const initialState = JSON.parse(localStorage.getItem('myState')) || {};

const store = createStore(
  rootReducer,
  initialState,
  compose(
    applyMiddleware(thunk),
    (b&&a()) || compose
  )
);

export default store;

Existuje také redux-persist balíček, který nabízí trochu přizpůsobení pro to, co se přetrvává a inicializuje z persistence.




  1. Jak zruším dotaz v mongo JavaScript shell

  2. Alternativy k vnořeným strukturám v Redis?

  3. Jaký je nejrychlejší způsob, jak zjistit, kdy byla provedena poslední aktualizace MongoDB

  4. Zaokrouhlování na 2 desetinná místa v mongodb