亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

React Redux -> Map 不是函數?

React Redux -> Map 不是函數?

jeck貓 2023-05-25 15:46:13
所以我正在學習如何使用 redux 和 redux persist,目前我遇到了一個問題。每當我嘗試映射我商店的內容時,它都會拋出一條錯誤消息TypeError: tasks.map is not a function,我真的不知道為什么會出現這個問題。我用谷歌搜索并嘗試調試它,也嘗試重寫代碼幾次,但都無濟于事。這是我的全部代碼:rootReducer.jsimport React from 'react'let nextToDo = 0;const task=[    {    }]const reducer =(state=task, action)=>{    switch(action.type)    {        case 'add':            return[                ...state,                {                    name: 'new',                    id: nextToDo+=1                }            ]        default:            return state;    }}export default reducer商店.jsimport reducer from './rootReducer'import {applyMiddleware,createStore} from 'redux'import logger from 'redux-logger'import {persistStore, persistReducer} from 'redux-persist'import storage from 'redux-persist/lib/storage'const persistConfig ={    key: 'root',    storage}export const persistedReducer = persistReducer(persistConfig, reducer)export const store = createStore(persistedReducer, applyMiddleware(logger));export const persistor = persistStore(store);export default {store, persistor}索引.js:import React, {Component} from 'react'import {createStore} from 'redux'import reducer from './rootReducer'import 'bootstrap/dist/css/bootstrap.min.css'import {Button} from 'react-bootstrap'import {store} from './store'import {connect} from 'react-redux'class Index extends Component {    render(){    const {tasks} = this.props    const add=()=>    {        store.dispatch(            {                type: 'add',             }        )    }    store.subscribe(()=>console.log('your store is now', store.getState()))    return (        <div>            {tasks.map(task=><div>{task.name}</div>)}            <Button onClick={()=>add()}></Button>         </div>    )}}const mapStateToProps=(state)=>{    return{        tasks: state    }}export default connect(mapStateToProps)(Index)
查看完整描述

1 回答

?
冉冉說

TA貢獻1877條經驗 獲得超1個贊

嘗試以這種方式聲明狀態:


state = {

  tasks: [{}]

}


然后,在 Index.js 上,您可以通過執行以下操作將其傳遞給 props:


const mapStateToProps=(state)=>

{

    return {

        tasks: state.tasks

    }

}


并在組件內部使用它props.tasks


查看完整回答
反對 回復 2023-05-25
  • 1 回答
  • 0 關注
  • 135 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號