最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

react redux中如何獲取store數(shù)據(jù)并將數(shù)據(jù)渲染出來

 更新時間:2022年08月04日 14:12:21   作者:web前端 zxp  
這篇文章主要介紹了react redux中如何獲取store數(shù)據(jù)并將數(shù)據(jù)渲染出來,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

前景提要

如果不了解基礎(chǔ)的話 ----- 點擊此處

本文著重實現(xiàn)效果,不會講太多原理問題

未使用 react-redux 管理工具

1.創(chuàng)建倉庫骨架并書寫初始代碼

src 目錄下創(chuàng)建

//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.正式開始

關(guān)鍵點在于 reducer.js 文件

它是一個純函數(shù),在不修改原始值的情況下返回一個新的數(shù)據(jù)

現(xiàn)在我們返回一個新的數(shù)據(jù)給 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   //將新的數(shù)據(jù)返回出去
}
export default  reducer

因為并沒有數(shù)據(jù)傳遞過來,所以我們用一個默認的數(shù)據(jù)來代替,然后把它給一個新的數(shù)據(jù)再傳出去(store會自動接收return 的數(shù)據(jù))

3.store 數(shù)據(jù)獲取方法(可略過)

既然前文已經(jīng)返回數(shù)據(jù),那我們就看看返回來的數(shù)據(jù)的樣子

//在任意頁面(view)引入該store
import store from './store'
console.log("store====",store)

效果圖

這是 該 store 的方法

通過 getState()方法來獲取數(shù)據(jù)

import store from './store'
console.log(store.getState())

4.數(shù)據(jù)的獲取與展示

上文中 通過 store.getState()獲取到了參數(shù),那么我們就可以把獲取到的參數(shù)賦值給現(xiàn)在的 組件的 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   //將獲取到的數(shù)據(jù)里面的內(nèi)容賦值給 該頁面 state
            							   //頁面初次渲染的時候什么都沒有,在這里獲取并修改數(shù)據(jù)
            							   //使得頁面重新渲染,拿到數(shù)據(jù)
        })
    }
    render() {
        return (
            <div>
                {
                    this.state.todos.map(item=>{   //這里就是展示了
                        return(
                            <ul key={item.id}>
                                <li>{item.id}</li>
                                <li>{item.title}</li>
                            </ul>
                        )
                    })}
            </div>
        )
    }
}

效果圖

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • react使用.env文件管理全局變量的方法

    react使用.env文件管理全局變量的方法

    本文主要介紹了react使用.env文件管理全局變量的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • 詳解webpack + react + react-router 如何實現(xiàn)懶加載

    詳解webpack + react + react-router 如何實現(xiàn)懶加載

    這篇文章主要介紹了詳解webpack + react + react-router 如何實現(xiàn)懶加載,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-11-11
  • 在react配置使用less的完美方案

    在react配置使用less的完美方案

    由于 create-react-app 使用 webpack 作為其模塊打包器,你需要修改 webpack 的配置來支持 .less 文件,這篇文章主要介紹了在react配置使用less的完美方案,需要的朋友可以參考下
    2024-04-04
  • React使用Electron開發(fā)桌面端的詳細流程步驟

    React使用Electron開發(fā)桌面端的詳細流程步驟

    React是一個流行的JavaScript庫,用于構(gòu)建Web應(yīng)用程序,結(jié)合Electron框架,可以輕松地將React應(yīng)用程序打包為桌面應(yīng)用程序,本文詳細介紹了使用React和Electron開發(fā)桌面應(yīng)用程序的步驟,需要的朋友可以參考下
    2023-06-06
  • React+TS+IntersectionObserver實現(xiàn)視頻懶加載和自動播放功能

    React+TS+IntersectionObserver實現(xiàn)視頻懶加載和自動播放功能

    通過本文的介紹,我們學(xué)習(xí)了如何使用 React + TypeScript 和 IntersectionObserver API 來實現(xiàn)一個視頻播放控制組件,該組件具有懶加載功能,只有在用戶滾動頁面且視頻進入視口時才開始下載視頻資源,需要的朋友可以參考下
    2023-04-04
  • 解決React在安裝antd之后出現(xiàn)的Can''t resolve ''./locale''問題(推薦)

    解決React在安裝antd之后出現(xiàn)的Can''t resolve ''./locale''問題(推薦)

    這篇文章主要介紹了解決React在安裝antd之后出現(xiàn)的Can't resolve './locale'問題,本文給大家分享解決方案,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • 在create-react-app中使用sass的方法示例

    在create-react-app中使用sass的方法示例

    這篇文章主要介紹了在create-react-app中使用sass的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-10-10
  • 一文帶你搞懂useCallback的使用方法

    一文帶你搞懂useCallback的使用方法

    useCallback是用來幫忙緩存函數(shù)的,當(dāng)依賴項沒有發(fā)生變化時,返回緩存的指針,而props涉及到復(fù)雜對象類型都是通過指針來傳遞到,下面這篇文章主要給大家介紹了關(guān)于useCallback使用的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • 如何將你的AngularJS1.x應(yīng)用遷移至React的方法

    如何將你的AngularJS1.x應(yīng)用遷移至React的方法

    本篇文章主要介紹了如何將你的AngularJS1.x應(yīng)用遷移至React的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • 詳解如何使用Jest測試React組件

    詳解如何使用Jest測試React組件

    在本文中,我們將了解如何使用Jest(Facebook 維護的一個測試框架)來測試我們的React組件,我們將首先了解如何在純 JavaScript 函數(shù)上使用 Jest,然后再了解它提供的一些開箱即用的功能,這些功能專門用于使測試 React 應(yīng)用程序變得更容易,需要的朋友可以參考下
    2023-10-10

最新評論

湄潭县| 阳新县| 张家川| 陇西县| 黎平县| 手机| 济南市| 革吉县| 梅河口市| 靖西县| 封开县| 龙陵县| 博客| 出国| 乌苏市| 麻阳| 新晃| 湘潭市| 新沂市| 襄垣县| 伊通| 丰宁| 平南县| 福州市| 乌拉特后旗| 盐津县| 永吉县| 永兴县| 满城县| 四会市| 保亭| 抚州市| 司法| 商丘市| 综艺| 鄂托克前旗| 乌鲁木齐县| 宜宾县| 安溪县| 华坪县| 永平县|