У меня есть класс React, в котором я использую плагин с именем React CSV , который преобразует массив значений в CSV и начинает загрузку вновь созданного файла CSV в браузере.
Я вызываю функцию, когда нажимается кнопка «Экспорт». Эта функция находится за пределами функции рендеринга (хотя тот же класс React). Компонент инициирует загрузку CSV-файла сразу после его визуализации.
Мой компонент кнопки, внутри метода render ():
<Button
variant="contained"
color="secondary"
onClick={this.exportCSV.bind(this)}
>
Export
</Button>
Моя функция exportCSV, определенная до метода рендеринга, выглядит следующим образом:
exportCSV(){
const csvMergedData = this.props.dataA.map((value, index)
=> ({
columnA: value,
columnB: this.props.dataB[index]
}));
return (<CSVDownload data={csvMergedData} /> );
}
Проблема в том, что компонент CSVDownload не монтируется / не обрабатывается, поэтому загрузка файла CSV не происходит.
Как визуализировать компонент?
PS: я прошел другие SO-ответы, но не смог найти решение.