0

我对反应很陌生,有些东西我什至不知道如何在谷歌中搜索。

好的,所以我有一个类,我在其中通过映射项目的图像来呈现图像库。下面是示例代码:

example.images.map((img,i) => { 
                return <div className="Class1" key={'image_' + i}>
                  <div className="Class2">
                    <img src={img.Url} alt={'image_' + i} onClick={this.doSomething}/>
                  </div>
                  <a className="Class3" onClick={doSomethingElse(img)}></a>
                </div>

然后在同一个文件中有另一个类(不是作为不同的组件),我在其上创建一个模式(从 gi​​t 克隆的模块),我想做的就是从映射中传递 {img.Url},所有这个模态类的方法如下:

class Modal extends Component {


  render() {
    const { onClose, isOpen } = this.props;

    //THIS IS WHERE I WANT TO PLACE THE URL FROM THE MAPPING
    const GrabUrl  = {how.to.do.it.?} ;

    return  (
      <Modal ariaHideApp={ false }
          isOpen={ isOpen }
          contentLabel="Modal"
          onRequestClose={ onClose }>

      <a className="closeModal" onClick={onClose}>X</a>

            <div className="Class4"><img src={GrabUrl} /></div>
      </Modal>
    )
  }
}

我想要做的甚至可能吗?

4

1 回答 1

0

如果我理解正确,是的,

您必须将 img.Url 作为参数传递给doSomething函数,如下所示:

<img src={img.Url} alt={'image_' + i} onClick={() => this.doSomething(img.Url}/>

然后你可以从那里处理模态。

于 2018-04-04T11:21:41.020 回答