Использование данных из функции обратного вызова 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"));
}
});
По сути, я действительно получил вещи назад и неправильно понял функции обратного вызова. Результаты переменной были вне области видимости, потому что создавались асинхронно, и поэтому трудно / невозможно вернуть "обычным способом". Легким решением было поместить мою визуализацию в область обратного вызова.
Спасибо!