簡體   English   中英

如何將數組的索引傳遞到reactJs onClick中?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM