【问题标题】:Can you persist individual states in redux persist你能在 redux persist 中持久化单个状态吗
【发布时间】:2022-12-31 21:15:34
【问题描述】:

所以我正在使用 redux 工具包和 redux persist 来持久化某些 reducer 但问题是我不想持久化整个 reducer 而只是 reducer 内部的状态

我白名单的代码(坚持}某些减速器

源代码/应用程序/store.js

import { combineReducers, configureStore } from "@reduxjs/toolkit";
import { persistReducer } from "redux-persist";
import storageSession from "redux-persist/es/storage/session";
import thunk from "redux-thunk";

import registerReducer from "../features/register.slice";
import verificationReducer from "../features/verification.slice";

// Combining reducers
const reducers = combineReducers({
  register: registerReducer,
  verification: verificationReducer,
});

const persistConfig = {
  key: "root",
  storage: storageSession,
  whitelist: ["verification"], // Slicers that will be persisted
};

const persistedReducer = persistReducer(persistConfig, reducers);

// Creating store
export const store = configureStore({
  reducer: persistedReducer,
  devTools: process.env.NODE_ENV !== "production",
  middleware: [thunk],
});

提前致谢!

【问题讨论】:

标签: javascript reactjs redux react-redux redux-persist


【解决方案1】:

一种方法是:-

如果您不想让任何状态持续存在,那么您可以在通过调度操作重新加载窗口后擦除状态的值。

像这样:- 我有一个动作搜索州名是搜索值

当我想设置搜索值时,我们可以调用 searchHandler 但是一旦窗口重新加载然后在 useEffect 中我们调度相同的操作但是将值设置为 null

const searchHandler=(e)=>{
e.preventDefault();
dispatch(search(searchedValue));}

useEffect(()=>{ dispatch(search(null)); },[])

【讨论】:

    猜你喜欢
    • 2018-08-14
    • 1970-01-01
    • 2022-11-11
    • 2019-04-14
    • 1970-01-01
    • 2017-10-08
    • 1970-01-01
    • 2018-05-21
    • 2020-12-25
    相关资源
    最近更新 更多