[英]Reactjs - How to pass an array to a function?
我有一個組件,該組件使用數組中的信息創建按鈕,當用戶單擊按鈕時,我要將信息從該數組中傳遞給函數,但是我得到的是[[Object Object]],我該如何傳遞數組並訪問函數中的元素?
功能:
handleClick (e) {
const { value } = e.currentTarget
console.log(value)
};
組件渲染:
render () {
return (
<div>
{this.state.enrollments.map(item => (
<div key={item.id}>
<button value={item} onClick={this.handleClick}>
{item.enrollment}
</button>
</div>
))}
</div>
)
}
傳遞給地圖的數組:
0: {id: 1, evaluation_flag: false, enrollment: "2019.1", user_id: 2}
1: {id: 2, evaluation_flag: false, enrollment: "2019.2", user_id: 2}
在handleClick函數中,我要訪問值,鍵入:value.id或value.user_id。
您可以根據需要創建一個箭頭函數,您的代碼將變為:
<button value={item} onClick={(e) => this.handleClick(e, item)}>
{item.enrollment}
</button>
然后顯然修改handleClick
函數以接受第二個參數item
。
基本上, (e) => handleClick(e, item)
所做的是就地創建以下函數:
function (e) {
return handleClick(e, item);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.