我有这个Json变量:
this.state = {
groups: [{
name: '',
permission: [{
name: ''
}]
}]
}
在我的渲染方法上,我有这个:
render() {
return (
<div>
<div>
<HeaderApp />
<h3>Choose a group to add permissions:</h3>
{this.state.groups.map((groups) => {
return (<li key={groups.code}>
<Card>
<CardBody>
<CardTitle>{groups.name}</CardTitle>
<CardSubtitle>This group has {this.countPermissionPerGroup(groups)} permissions.</CardSubtitle>
<Button color="secondary" onClick={(groups) => this.onClickShowPermissions(groups)}>Show permissions</Button>
<Button color="secondary">Add Permission</Button>
</CardBody>
</Card>
</li>)
})}
</div>
</div>
);
}
在onClick方法上,我想传递按钮所属的组,并获取该组的所有权限,并使用此方法在控制台上打印它:
onClickShowPermissions = (group) => {
for(var g in group.permission){
console.log("Test"+g)
}
}
但是由于某种原因无法正常工作,我在做什么错了?
答案 0 :(得分:1)
onClick操作具有绑定的事件类型。因此,与其尝试直接从onClick传递组,不如将其保留为空:
<Button color="secondary" onClick={() => this.onClickShowPermissions(groups)}>Show permissions</Button>