Пару занепокоєнь для мене щодо використання рядкового стрибка в onClick, і коли кількість аргументів зростатиме, це стане громіздким для підтримки.
Наступний підхід матиме один скачок - при натисканні - перенесіть управління на метод обробника, а метод обробника, заснований на об'єкті події, може вирахувати подію клацання та відповідний об'єкт.
Це також забезпечує більш чіткий спосіб додати більше аргументів і мати більшу гнучкість.
<button type="button"
className="btn btn-default"
onClick="invoke"
name='gotoNode'
data-arg1='1234'>GotoNode</button>
На шарі JavaScript:
invoke = (event) => {
let nameOfFunction = this[event.target.name];
let arg1 = event.target.getAttribute('data-arg1');
//We can add more args as needed...
window[nameOfFunction](arg1)
//hope function is in window.
//Else the respective object need to be used
})
}
Перевага тут полягає в тому, що ми можемо мати стільки аргументів (у наведеному вище прикладі, дані-arg1, data-arg2 ....), скільки потрібно.