[英]Pass the value or name of a Nav tag in an OnClick event in ReactJS
我遇到了一個無法解決的愚蠢的小問題,就是如何將值傳遞給OnClick事件? 我需要通過它,因為它是菜單中某些值的值,並且我正在使用它們進行處理:
我的onClick函數:
onClick() {
this.setState(prevState => ({ childVisible: !prevState.childVisible }));
}
我的“導航欄”的邏輯是:
<NavLink
onClick={() => this.onClick()}
value={"Spain"}
to="/other">
Spain
</NavLink>
<NavLink
onClick={() => this.onClick()}
value={"EE.UU"}
to="/sidebar">
EE.UU
</NavLink>
之后,我需要恢復OnClick函數的值(國家(西班牙或EE.UU)的名稱)傳遞。
我了解有很多帖子,但對我不起作用。
謝謝!
你有沒有嘗試過
<NavLink
onClick={() => this.onClick("Spain")}
value={"Spain"}
to="/sidebar">
Spain
</NavLink>
在您的onClick函數中,您將獲得價值
onClick(value) {
console.log(value); //Spain
}
您可以使用currying,請注意,您可能必須對此進行綁定或使用箭頭函數自動綁定適當的this
上下文
onClick(value) {
// use value how ever you need
this.setState(prevState => ({ childVisible: !prevState.childVisible }));
}
bindValueToClick(value) {
return function() {this.onClick(value)};
}
<NavLink
onClick={this.bindValueToClick("Spain")}
value={"Spain"}
to="/sidebar"
>
Spain
</NavLink>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.