[英]How can I pass the index of an array into a reactJs onClick?
const Test = ({ inventory }) =>
<div className="row">
{inventory.map((item, i) =>
<div className="item" key={"item_" + i}>
<div className="card hoverable col s3">
<img onClick={buyItem(i)} src={item.img} alt="" />
<div className="container center-align">
<h4 className="">
{item.name}
</h4>
<p>
Price: {item.price}
</p>
<p>
Average price paid: {item.averageDisplay}
</p>
<p>
Amount owned: {item.owned}
</p>
<button
className="btn"
data={item.index}
onClick={sellItem(i)}
name="button"
>
Sell
</button>
</div>
</div>
</div>
)}
</div>;
ReactDOM.render(<Test inventory{inventory}/>,
document.getElementById("container")
);
庫存是一個對象數組,在此示例中,我已經成功地遍歷了所有對象,但是由於某些原因,盡管已經將i的值用於生成唯一鍵,但我仍無法弄清楚如何將i的值傳遞給該函數。
您需要創建一個新功能
onClick={() => sellItem(i)}
通過創建函數調用來像這樣使用它
onClick={(event) => buyItem(event, i)}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.