麻烦将对象作为道具传递过来

时间:2016-07-20 21:40:48

标签: javascript reactjs

我无法将对象作为道具传递过来。我有一个click事件,我从函数参数创建一个对象:

addClass: function(c){
   var details =  [{
        course: c.name, 
        credits: c.credits,
        time: c.time,
        days: c.days,
        enrolled: true
    }]

   this.setState({schedule: this.state.schedule.concat(details)})
},

我正试图在我的Schedule组件中映射数组:

var schedule = this.props.schedule.map(function(index, s){
        return (<li key={index}>{s.time}</li>)
    })

    return (
        <div className="schedule">
        <h4>Your Fall semester schedule</h4>
            <ul>
                {schedule}
            </ul>
        </div>
    )

由于某些原因,我无法在details组件中显示任何Schedule属性。这是一个演示:http://codepen.io/p-adams/pen/qNxZBV 基本上我想要做的是每次按下Schedule按钮时在add组件中显示课程名称,时间和天数。

1 个答案:

答案 0 :(得分:3)

尝试撤消.map功能的参数。

改变这个:

this.props.schedule.map(function(index, s){

要成为这样:

this.props.schedule.map(function(s, index){