我的React踩坑日记,持续更新。

该博客会持续记录我的踩坑日记

1、redux: createStore的preloadedState参数

    使用localStorage用作存储用户操作记录时,我们需要将将state转成json字符串存储在localStorage中。 同时我们需要在createStore中传入localStorage存储的state, 这时切记 切记一定要将json字符串转换成对象。否则会产生该异常:The preloadedState argument passed to createStore has unexpected type of “String”

import {createStore, combineReducers, applyMiddleware} from "redux";
import Reducers from "../reducers";

const saver = store => next => action => {
    next(action);
    localStorage['redux-cache'] = JSON.stringify(store.getState());
}

const storeFactory = () => {
    let cache = JSON.parse(localStorage['redux-cache']);
    return createStore(
        combineReducers({...Reducers}),
        cache ? cache : {},
        applyMiddleware(saver)
    )
}

export default storeFactory;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值