2015-10-15 3 views
0

Я пытаюсь выяснить, как вызвать функцию с параметром, я использую функции стрелок.Как добавить параметр при вызове функции?

Просто пример:

_openAddDealer = (dealerInfo) => { 
    console.log(dealerInfo); 
} 

И мне нужно позвонить, что с помощью кнопки

<FloatingActionButton onClick={this._openAddDealer}> 

Для остальных функций мне не нужен какой-либо привязки к this или что-то подобное. Итак, что я могу сделать что-то вроде этого:

<FloatingActionButton onClick={this._openAddDealer(dealerInfo)}> 

Я пытался так, но эта функция вызывается, когда приложение загружает и не при нажатии кнопки.

+0

Это не проблема ES6, не так ли? Вы привязываете параметр к функции в любом ES *. – Rudie

+0

@ Руди, можете ли вы объяснить это в ответ? Пожалуйста. – NietzscheProgrammer

+0

Где находится 'dealerInfo', откуда вы вызываете эту функцию? – JMM

ответ

1

Я предполагаю, что это JSX. Вероятно, вы ищете что-то вроде:

<FloatingActionButton onClick={() => this._openAddDealer(dealerInfo)}> 
+0

Философски говоря: УДИВИТЕЛЬНО! – NietzscheProgrammer

+0

Отлично! Это JSX, не так ли? Давайте помечаем его таким образом и затянем заголовок. – JMM

1

Может ли быть это просто:

button.onClick = function() { 
    // with button's this 
    _openAddDealer.call(this, dealerInfo); 
    // with outside this 
    _openAddDealer(dealerInfo); 
}; 

? Я не знаю, что вы делаете с < и т. Д., Поэтому я мог бы неправильно понять ...

+0

не получил кнопку button.onClick. Я просто сделал '' и то же самое произойдет. – NietzscheProgrammer

+0

Где вы это сделали? Что такое ''? Фреймворк? – Rudie

Смежные вопросы