我无法将对象作为道具传递过来。我有一个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
组件中显示课程名称,时间和天数。
答案 0 :(得分:3)
尝试撤消.map
功能的参数。
改变这个:
this.props.schedule.map(function(index, s){
要成为这样:
this.props.schedule.map(function(s, index){