如何捕获模态打开的ID值来编辑项目?

问题描述 投票:0回答:1

我试图从一个模态打开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"或其他方式获得价值?

reactjs event-handling modal-dialog semantic-ui
1个回答
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, })
}

如果我理解你的问题就把它传递给函数...

编辑

如果你需要使用状态而不是道具,你可以复制构造函数中的值,例如:

constructor(props){
 super(props)
 this.state = { myID : this.props.sighting.id}
}

而不是使用this.state.myID而不是this.props.sighting.id

© www.soinside.com 2019 - 2024. All rights reserved.