PapaParse Chunk 加载所有数据

Posted

技术标签:

【中文标题】PapaParse Chunk 加载所有数据【英文标题】:PapaParse Chunk loads all the data 【发布时间】:2018-04-27 16:57:12 【问题描述】:

我无法弄清楚这一点。我正在使用 Papaparse 解析一个巨大的 CSV 文件以获取数据集并插入 d3 和交叉过滤。首先,我使用 node.js 只是为 ejs 运行服务器(我没有使用任何嵌入式 js)。当我运行我的应用程序时,它就像一个魅力。我在块函数中看到它基于 10 mb 默认值获取结果,并且我得到了数据集。然后我需要将我的代码传输到 eclipse 并将其转换为 jsp 或 html 并运行我的 websphere 服务器而不是 Node.js。当我运行我的应用程序时,我注意到该块正在接收我的所有数据集,而不是每个数据集 10MB,这导致我的 IE11 浏览器崩溃。这是一个错误吗?我试图将 Papa.LocalChunkSize 声明为等量的 MB,但它仍在加载我的所有数据集。请问我需要帮助....

这是我的代码以防万一。

    var chunk1Finish = false;
var chunkMainData1Finish = false;
var finishLoadingMainData = false;

var mdata = [];

     Papa.parse("data2/week201751custinqfinal_v4.csv", 
     download: true,
     header: true,
     skipEmptyLines: true,
     complete: function() 
        console.log("complete!! the MAIN data length is: " + mdata.length);
        finishLoadingMainData = true;
        buildPage(finishLoadingMainData, finishLoadingTrendData);
     ,
    chunk: function(results) 
        //mdata.push(results.data[0]);
        if(chunkMainData1Finish) 
            console.log("chunkMainData1Finish is true");
            Array.prototype.push.apply(mdata, results.data);
         else 
            console.log("chunkMainData1Finish is false");
            mdata = results.data;
            chunkMainData1Finish = true;
        
    ,
    error: function(error) 
        console.log("error!!!! " + error);
    
);

【问题讨论】:

【参考方案1】:

Papa.LocalChunkSize 也不适合我。我在Papa.parse 函数中添加了一个chunkSize 参数(只需在代码中的chunk: 之前添加它)。

示例:chunk: 1024 * 1024 * 1, 是 1MB 分块。

【讨论】:

现在不工作了...Overload 1 of 2, '(input: string | ReadableStream | File, config?: ParseConfig<unknown> | undefined): ParseResult<unknown>', gave the following error. Argument of type ' worker: true; chunkSize: number; skipEmptyLines: true; header: true; chunk: (chunk: any) => void; error: (error: ParseError) => void; complete: () => void; ' is not assignable to parameter of type 'ParseConfig<unknown>'. Object literal may only specify known properties, and 'chunkSize' does not exist in type 'ParseConfig<unknown>'.

以上是关于PapaParse Chunk 加载所有数据的主要内容,如果未能解决你的问题,请参考以下文章

使用 csv-loader 加载 csv 文件失败

vue:路由懒加载Loading chunk 1 failed.

Webpack 根据 chunk 加载不同的模块

React 脚本问题:循环加载 chunk.js

webpack分片chunk加载原理

解决vue项目二次Loading chunk **** failed.