2016-07-07 64 views
1

我試圖從內聯onClick傳遞給一個函數,我知道我犯了一個愚蠢的錯誤......但我的大腦有點融化。反應 - 傳遞(this)onClick?

這是FIDDLE

handleClick() { 
    $('.nav-link').removeClass('active'); 
    $(this).addClass('active'); 
} 
+1

也許你不應該使用jQuery來做到這一點,更好地使用組件狀態來存儲有關活動項目的信息,並將其用於渲染:https://jsfiddle.net/euo2p1h2/1/ –

回答

3

有很多可能的解決方案(其中之一是使用ref的)。但是我編輯你的擺弄着一個更簡單的方法:

handleClick(e) { 
    $('.nav-link').removeClass('active'); 
    $(e.target).addClass('active'); 
    } 

https://jsfiddle.net/mrlew/esn5sz5b/2/

無論如何,我建議另一種方法,而不是jQuery的。您可以使用反應手動處理活動項目。

+0

謝謝!我知道這是微小的東西:) –