javascript - 使用 PapaParse 下载多个文件?

标签 javascript papaparse

我正在使用PapaParse从我的 JavaScript 脚本下载 CSV 文件,效果很好。

但是,我有一个页面,我需要下载两个文件,然后才做一些工作,我想知道是否有比这更简洁的方法:

Papa.parse(url_seriesy, {
    download: true,
    header: true,
    keepEmptyRows: false,
    skipEmptyLines: true,
    error: function(err, file, inputElem, reason) { // handle },
    complete: function(y_results) {
            Papa.parse(url_seriesx, {
                download: true,
                header: true,
                keepEmptyRows: false,
                skipEmptyLines: true,
                error: function(err, file, inputElem, reason) { // handle },
                complete: function(x_results) {
                    console.log(x_results.data);
                }
            });
    }
});

这可行,但相当笨拙。我还有什么可以做的吗?也许我可以使用 promise ?

最佳答案

如果我理解正确的话,您想要解析每个文件,然后在收集所有结果后执行某些操作。有几种方法可以做到这一点,但这是我可能做到的一种方法(注意:我还没有运行此代码;它可能需要调整):

var files = ["file1.csv", "file2.csv"];
var allResults = [];

for (var i = 0; i < files.length; i++)
{
    Papa.parse(files[i], {
        download: true,
        header: true,
        skipEmptyLines: true,
        error: function(err, file, inputElem, reason) { /* handle*/ },
        complete: function(results) {
            allResults.push(results);
            if (allResults.length == files.length)
            {
                // Do whatever you need to do
            }
        }
    });
}

关于javascript - 使用 PapaParse 下载多个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29410435/

相关文章:

javascript - 下载/保存 CSV 文件 - PapaParse

javascript - 如何相?如果变量=(条件1)+(任意)

javascript - 为什么 let 不比 var 慢?

javascript - HTML/CSS/JS/jQuery : Color "table"/"grid"

javascript - 混合内容: Rewrite Javascript to use HTTPS-only

javascript - 如何在预加载阶段 Phaser.js 中使用 Papa Parse 解析 csv,而不是异步?

javascript - 如何使用 Papa Parse 读取本地文件?

javascript - 根据网页和 SQL 数据库中的坐标创建 svg 元素

javascript - 如何下载从 papaparse 生成的 csv?

javascript - PapaParse 在读取 CSV 时返回 undefined