我如何通过" img"反对ReactJS JSX中的onload事件处理程序?

时间:2016-09-02 01:59:11

标签: javascript reactjs react-jsx

我正在创建一个onLoad标签,我想收听//In the JSX: <img src={this.generateSrc(config)} onLoad={this.handleOnLoad} /> 事件,但我还需要实际的图片对象,以便检查宽度/高度等。这些都是动态创建的,所以我事先无法知道id。

<img onload="someFunction(this)" />

在普通的javascript中,我可以这样做:

componentHandler.upgradeDom();

如何在ReactJS中传递它?

2 个答案:

答案 0 :(得分:2)

您可以通过e.target获取实际图像对象。

handleOnLoad(e) {
    console.log(e.target);
}

或通过Refs to Component

handleOnLoad() {
    console.log(this.refs.img);
}

<img ref='img' src={this.generateSrc(config)} onLoad={this.handleOnLoad.bind(this)} />

答案 1 :(得分:0)

未来的javascript允许您这样做:

handleOnLoad = (e) => {
  console.log(e.target);
}

<img src={imgSrc} onLoad={this.handleOnLoad} />