标签:persistor js React token 存值 import redux store
先创建一个store.js文件
在https://www.npmjs.com/package/redux-persist官网里面
import { createStore } from 'redux'
import { persistStore, persistReducer } from 'redux-persist'
import storage from 'redux-persist/lib/storage' // defaults to localStorage for web
import rootReducer from './reducers'
const persistConfig = {
key: 'root',
storage,
whitelist: ['token']
}
const persistedReducer = persistReducer(persistConfig, rootReducer)
let store = createStore(persistedReducer)
let persistor = persistStore(store)
export default { store, persistor }
在你的index.js里面继续引入
import { PersistGate } from 'redux-persist/integration/react'
上面sotre.js抛出 现在解构引用
import storefn from './store'
const { store, persistor}=storefn
常规设置,创建存储和持久性,导入组件等。
<Provider store={store}>
<PersistGate loading={null} persistor={persistor}>
<ConfigProvider locale={zhCN}>
<App />
</ConfigProvider>
</PersistGate>
</Provider>
去建立一个reducers文件
新建一个token.js
var token = localStorage.getItem('data')
function token(state = token, { type, payload }) {
switch (type) {
case 'typeName':
localStorage.setItem('data', payload)
return payload
default:
return state
}
}
export default token
建立一个index.js 挂载
import { combineReducers } from 'redux'
import token from './token'
export default combineReducers({
token
})
可以在http.js里面看看能不能输出
config.data.token = store.getState().token
在你的页面连结仓库
import { connect } from 'react-redux'
export default connect((state) => {
return {
token: state.token
}
}, {
setName(text) {
return {
type: "see",
payload: text
}
}
})(页面)
页面存值
props.setName(存值)
页面取值
{props.token}
完成了React redux 存值取值 持久化
标签:persistor,js,React,token,存值,import,redux,store 来源: https://blog.csdn.net/weixin_47353884/article/details/114728526
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。