我试图从一个模态打开onClick()获得'id'的值。我已经分配了value={this.props.sightings.id
,但没有出现在event.target.value
。
我试图用调试器找到值,我可以用下面的格式看到它,但不知道如何访问它。
这是语义 - 模态组件功能:
<Modal
trigger={
<Icon
name="camera retro"
value={this.props.sighting.id}
size="big"
value={this.props.sighting.id}
style={{ flex: 1, justifyContent: "center", alignItems: "center" }}
onClick={this.handleOpen}
/>
}
open={this.state.modalOpen}
onClose={this.handleClose}
basic
size="small"
>
这是点击处理程序:
handleOpen = (e) => {
console.log(e)
this.setState({ modalOpen: true, })
}
这是控制台中的结果:
<i
value="7"
aria-hidden="true"
class="camera retro big icon"
style="flex: 1 1 0%; justify-content: center; align-items: center;"
/>
我想从<i value="7"
或其他方式获得价值?
你能尝试一下吗?
<Modal
trigger={
<Icon
name="camera retro"
value={this.props.sighting.id}
size="big"
value={this.props.sighting.id}
style={{ flex: 1, justifyContent: "center", alignItems: "center" }}
onClick={() => this.handleOpen(this.props.sighting.id)}
/>
}
open={this.state.modalOpen}
onClose={this.handleClose}
basic
size="small"
>
handleOpen = (yourID) => {
console.log(yourID)
this.setState({ modalOpen: true, })
}
如果我理解你的问题就把它传递给函数...
编辑
如果你需要使用状态而不是道具,你可以复制构造函数中的值,例如:
constructor(props){
super(props)
this.state = { myID : this.props.sighting.id}
}
而不是使用this.state.myID
而不是this.props.sighting.id