您现在的位置是:网站首页> 编程资料编程资料
react redux中如何获取store数据并将数据渲染出来_React_
2023-05-24
267人已围观
简介 react redux中如何获取store数据并将数据渲染出来_React_
前景提要
如果不了解基础的话 ----- 点击此处
本文着重实现效果,不会讲太多原理问题
未使用 react-redux 管理工具

1.创建仓库骨架并书写初始代码
src 目录下创建

//store/index.js 代码 import { createStore } from 'redux'; import reducer from "./reducer" const store = createStore(reducer); export default store //store/reducer.js const reducer = (prevState,action)=>{ let newState = {...prevState} return newState } export default reducer 2.正式开始
关键点在于 reducer.js 文件
它是一个纯函数,在不修改原始值的情况下返回一个新的数据
现在我们返回一个新的数据给 store(仓库)
//store/reducer.js let state = { todos:[ { id:1, title:"今天周一", isFinished:false }, { id:2, title:"今天周二", isFinished:true } ] } const reducer = (prevState = state,action)=>{ let newState = {...prevState} return newState //将新的数据返回出去 } export default reducer 因为并没有数据传递过来,所以我们用一个默认的数据来代替,然后把它给一个新的数据再传出去(store会自动接收return 的数据)
3.store 数据获取方法(可略过)
既然前文已经返回数据,那我们就看看返回来的数据的样子
//在任意页面(view)引入该store import store from './store' console.log("store====",store) 效果图:

这是 该 store 的方法
通过 getState()方法来获取数据
import store from './store' console.log(store.getState())

4.数据的获取与展示
上文中 通过 store.getState()获取到了参数,那么我们就可以把获取到的参数赋值给现在的 组件的 state
import React, { Component } from 'react' import store from '../store' //引入 export default class One extends Component { constructor(){ super() this.state = { todos:[] //一定要定义一个初始值 } } componentDidMount(){ this.setState({ todos:store.getState().todos //将获取到的数据里面的内容赋值给 该页面 state //页面初次渲染的时候什么都没有,在这里获取并修改数据 //使得页面重新渲染,拿到数据 }) } render() { return ( { this.state.todos.map(item=>{ //这里就是展示了 return( - {item.id}
- {item.title}
) })} ) } } 效果图:

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
您可能感兴趣的文章:
相关内容
- vue 内置组件 component 的用法示例详解_vue.js_
- vue组件component的注册与使用详解_vue.js_
- 最新JS正则表达式验证邮箱和手机号实例(2022)_javascript技巧_
- react redux的原理以及基础使用讲解_React_
- 解决react组件渲染两次的问题_React_
- vue3+ts使用APlayer的示例代码_vue.js_
- React函数组件useContext useReducer自定义hooks_React_
- React事件监听和State状态修改方式_React_
- vue3中实现音频播放器APlayer的方法_vue.js_
- 小程序使用scroll-view实现一个滑动列表功能_javascript技巧_
