我正在尝试从模式打开的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"
或从中获取价值
另一种方式?
答案 0 :(得分:0)
您可以尝试吗?
<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, })
}
如果我了解您的问题,只需将其传递给函数...
编辑
如果您需要使用状态代替props,则可以在构造函数中复制值,例如:
constructor(props){
super(props)
this.state = { myID : this.props.sighting.id}
}
而不是使用this.state.myID
代替this.props.sighting.id