0

我有一个用于渲染自定义图像的 React 组件。在简化的形式中,它看起来像这样:

function MyImage(props) {
  return <img src={props.src} onLoad={props.onLoad} />
}

该网页由服务器渲染,ReactDOMServer并且<img>元素(有意)已经存在于初始 HTML 文档中。但是,它们的onLoad事件处理程序不是. 我相信ReactDOMServer.

有时会发生的情况是,一些自定义图像,尤其是较小的图像,可以在 JavaScript 加载之前或在它开始运行之前或至少在 React 设置onLoad事件处理程序之前完成加载。因此,onLoad这些图像上的事件不会导致调用任何事件处理程序。

有没有办法确保在底层图像完成加载后始终调用在React 渲染元素onLoad中设置的事件处理程序?<img>

我最重要的限制是我想使用 React 并且服务器渲染的 HTML 页面需要包含正确设置属性元素<img>src

4

1 回答 1

0

您可以将onLoad处理程序移动到该componentDidMount()方法。查看文档

于 2017-09-06T23:18:52.097 回答