javascript - 反应从内部元素的 onLoad() 返回的合成事件
问题描述
我正在使用 ReactJS。我的目标是在 SVG 元素内加载图像时触发一些事件。
如果没有 SVG 元素,下面的代码将按预期工作-
function onImageLoad(event) {
console.log("Event triggered from <img> element", event);
// AS EXPECTED : Event object has natural width and natural height
}
return (
<div>
<img src={imageName} onLoad={ (event) => onImageLoad(event) }/>
</div>
)
但是,此代码无法按预期工作-
function onImageLoad(event) {
console.log("Event triggered from <image> element", event);
// UNEXPECTED : Event object does not have natural width or natural height
}
return (
<div>
<svg>
<image href={imageName} onLoad={ (event) => onImageLoad(event) }/>
</svg>
</div>
)
我曾尝试在几个地方阅读。目前尚不清楚为什么与反应中的合成事件<image>
不同。<img>
onLoad()
解决方案
推荐阅读
- reactjs - 我们如何向 react-native 应用程序发送恒定的图像流并不断更新图像源?
- java - 有没有办法让詹金斯在 X 分钟内不记录任何内容的阶段失败?
- ios - 如何在视图的选定位置设置按钮?
- asp.net-core - 我可以使用 WebCompiler 使用 Github Actions 和 ASP.NET Core 3.1 编译 SASS 文件吗?
- sql - 为什么这个带有 in 子句的查询不返回错误?
- postgresql - 在 postgresql 表中自动增加 3 列复合主键的一列
- python - 我们如何使用 ast.literal_eval 实现类似 eval 的功能
- exception - 如何启动已关闭且无法ping通的cassandra节点?
- r - ggsn::scalebar 没有放在角落里
- c++ - constexpr 静态成员定义