我正在尝试创建一个表并渲染一些能够拥有"隐藏"行。
以下是我要做的事情:
CreateRows
我在另一个组件中调用render: function(){
return (
<div>
<ChangeRowCount updatePeople = {this.updatePeople}/>
<table>
<CreateColumns columns={this.state.table_columns} />
<CreateRows people = {this.state.people}/>
</table>
</div>
)
}
并向其发送一些数据:
rows
我意识到我的问题是,当我创建变量onClick()
时我会包含函数Uncaught (in promise) TypeError: Cannot read property 'onClick' of undefined(…)
,但它可以&#39;#&#34;&#34;&#34;它并得到这个错误:
Child
有关如何包含onClick()函数以显示/隐藏# /usr/bin/nova-manage --debug api_db sync
组件的任何想法?
谢谢!
答案 0 :(得分:0)
您看到此错误是因为您在地图功能中调用了this.onClick
。
你需要通过传递this
作为第二个参数
var rows = this.props.people.map(function(row, i){
return (
<tr key={i} onClick={this.onClick}>
<td>{row['id']}</td>
</tr>
{
this.state.childVisible
? <Child />
: null
}
)
}, this)
在地图功能
上查看the documentation的thisArg
部分