所以我正在學習如何使用 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)
React Redux -> Map 不是函數?
jeck貓
2023-05-25 15:46:13