繁体   English   中英

渲染 redux 道具 map 不是 function

[英]Rendering redux props map is not a function

我正在尝试渲染redux state通过绘制一系列对象,但我得到了Z1D78DC81512121214E514EF5114EF514EF514EF514ER MON NOR MON 我可以控制台记录我的道具以查看它正在接收,但它看起来好像在道具被传递到组件之前试图通过它 map。 如您所见,我也尝试过使用 && 其他人建议的方法,但我得到的只是:

TypeError: myItems.map is not a function

这是我的代码

import React, {Component} from 'react';
import { connect } from 'react-redux';

class RandomComponent extends Component {
    state = {
        myItems: this.props.myItems
    }

    componentDidUpdate(prevProps, prevState, snapshot) {
        console.log('Styles: ', this.props.myItems); // Returns object array 
    }

    render() {
        const {myItems} = this.props; // also tried this.state
        return (
            <ul>
               {myItems && myItems.map((item) => {
                    return <span>Hello.</span>
                })}
            </ul>
        );
    }
}

const mapStateToProps = state => ({
    myItems: state.getmyItems.myItems
});

export default connect(mapStateToProps)(RandomComponent);

您的 initialState 是 object,将其设置为空数组 []。 在您的捕获中返回一个空数组而不是一个空 object。 && 不起作用,因为“存在”一个空的 object。 如果你仍然想使用 && 然后将 initialState 设置为 undefined

map是 arrays 的function您的数据类型可能是ZA8CFDE6331BD59EB26AC96F8911C4 遍历object ,您可以使用for... in

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM