【发布时间】:2017-11-06 06:11:40
【问题描述】:
我有 4 个盒子(<li> 元素)和 4 张图片。任务是在用户悬停特定框时显示特定图像。如果用户将鼠标悬停在框 0 上,则显示图像 0 如果 1 显示图像 1。
在悬停时,我更新状态 currantBox(例如 currantBox: 1)并将其传递给 img src 属性,如下所示:
<img src={this.props.content[this.props.currantBox]}/>
content 是一个带有 img 路径的 JSON 数组。问题是每次悬停时都会做出反应,即渲染,即状态更新,React 会发出 get 请求来下载图像,这根本没有效率。
实现我的想法或修复当前实现的最佳方式是什么?
【问题讨论】:
-
除非您设置了一些不正确的缓存标头,否则您的浏览器应缓存获取请求。如果您想摆脱第一次获取时的初始延迟,请使用图像映射(所有图像合二为一)或预加载图像。
标签: javascript html css reactjs