с анонимной функцией, которая получает результат и console.log, это работает.

ользуюПапа Парс проанализировать файл CSV для графиков. Я хочу хранить данные вРеагировать состояние после анализа файла. Papa.Parse () ничего не возвращает и результаты предоставляются асинхронно функции обратного вызова. Кроме того, setState () не работает внутри асинхронного обратного вызова. Этот вопрос похож наПолучение проанализированных данных из CSV.

Я попытался сохранить данные в состоянии, используя приведенный ниже код, но, как и ожидалось, это не сработало.

componentWillMount() {

    function getData(result) {
      console.log(result); //displays whole data
      this.setState({data: result}); //but gets error here
    }

    function parseData(callBack) {
      var csvFilePath = require("./datasets/Data.csv");
      var Papa = require("papaparse/papaparse.min.js");
      Papa.parse(csvFilePath, {
        header: true,
        download: true,
        skipEmptyLines: true,
        complete: function(results) {
          callBack(results.data);
        }
      });
    }

    parseData(getData);
}

Вот ошибка, которую я получаю, когда устанавливаю состояние внутри getData ().

Данные можно использовать внутри getData (), но я хочу их извлечь.

Как мне хранить данные в состоянии или в другой переменной, чтобы я мог использовать их для графиков?

Ответы на вопрос(1)

Ваш ответ на вопрос