reactjs - 将状态附加到动态呈现的元素
问题描述
我正在处理我的第一个 Gatsby 项目,我正在动态渲染 Contentful 的产品。我希望产品描述在悬停时显示。我知道如何在一张图像上执行此操作,但由于它是动态渲染的,我不知道如何为不同图像设置状态。现在,当您将鼠标悬停在一个上时,描述会显示在所有这些上。我无法在 .map 中设置状态。我可能只是在思考错误的方向,但我还没有在网上找到任何关于如何处理这个问题的信息。
let [isShown, setIsShown] = useState(false);
const productList = products.map((product) => {
return (
<div
key={product.id}
className="product-card"
onMouseEnter={() => setIsShown(true)}
onMouseLeave={() => setIsShown(false)}
>
{isShown && (
<p className="product-description">{product.productDescription}</p>
)}
</div>
);
});
如果有人能给我一个关于思考方向的线索,请提前感谢!
解决方案
推荐阅读
- ag-grid - ag-grid:剪贴板中的过去不起作用(已禁用)
- java - 如何设计具有未来可能更改的对象列表的视图模型
- wordpress - 如何使用托管程序解决 wordpress 中的 404 问题
- azure - 如何使 Azure Function 仅适用于使用 AAD 的选定用户
- sharepoint - 如何在 sharepoint 站点创建中显示有关字段的信息
- c# - 如何匹配 LINQ Where 中的两个不同标准?
- reactjs - Material UI - Select - 如何使用输入道具?
- maven - 从版本 13 升级到 14 时,Maven 不下载 JavaFX 依赖项
- flutter - 小部件库捕获的异常。Flutter 中不正确使用 ParentDataWidget
- eclipse - 如何为 NatTable 中的特定单元格跳过或不应用 cellpainter