Мне нужно объявить функцию для опоры, которая имеет определенный параметр.Компонент Аккордеон от Реакции-Родной-Разборный.Опора для компонента, который я хочу реализовать, - это onChange (indexes), и я хочу передать для него дополнительный параметр 'title'.
Я попытался передать параметр с тем же именем 'indexes ', но переменная' indexes 'не была объявлена, таким образом возвращая ошибку при выполнении.Я не знаю, какой синтаксис для передачи нового параметра.
Передача функции в реквизит без каких-либо параметров работает просто отлично, но мне нужно передать название в качестве параметра функции.
Сам компонент (я ожидал, что реквизиты onChange вызовут updateSections с индексами активного аккордеона и заголовка):
<Accordion
sections={data}
activeSections={activeSections}
renderHeader={this.renderHeader}
renderContent={this.renderList}
onChange={this.updateSections(indexes, title)}
touchableComponent={TouchableOpacity}
/>
Это прекрасно работает:
<Accordion
sections={data}
activeSections={activeSections}
renderHeader={this.renderHeader}
renderContent={this.renderList}
onChange={this.updateSections}
touchableComponent={TouchableOpacity}
/>
Функция для реализации:
updateSections = (activeSections, title) => {
switch (title) {
case 'PA':
this.setState({ activeSectionsPA: activeSections });
break;
case 'CA':
this.setState({ activeSectionsCA: activeSections });
break;
default:
break;
}
}
Любая помощь будет оценена!Спасибо!