Использование данных из функции обратного вызова Papaparse

Я, вероятно, все это получаю задом наперед, и боюсь, что долгое время не делал много javascript, и с тех пор многое изменилось. Таким образом, ответ может быть очень тривиальным, но я не смог найти ничего полезного в Интернете.

Очень просто, я хотел бы скопировать файл csv, локально (/log.csv) или удаленно ( http://mywebsite.com/log.csv), данные из которого я хотел бы использовать в Остальная часть сценария. Другими словами, в идеале что-то вроде этого:

var mydata = Papa.parse("http://fetconsulting.co.uk/demo-fleetdrive/log_full.csv", {
   download: true,
   complete: function(results) {
       console.log(results);
   }
});

alert(mydata.data.length);
myfantasticplottingfunction(mydata);

Мысли?

Благодаря тонну!

1 ответ

Это решило мою проблему:

Papa.parse("http://mywebsite.com/log.csv", {
    download: true,
    complete: function(results) {

        (function myfantasticplottingfunction(container) {

         // Do amazing things with envision.js on results
         console.log(results);
         alert(results.length);

         return new envision.templates.TimeSeries(options);
        })(document.getElementById("editor-render-0"));
     }
});

По сути, я действительно получил вещи назад и неправильно понял функции обратного вызова. Результаты переменной были вне области видимости, потому что создавались асинхронно, и поэтому трудно / невозможно вернуть "обычным способом". Легким решением было поместить мою визуализацию в область обратного вызова.

Спасибо!

Другие вопросы по тегам