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 加载所有数据的主要内容,如果未能解决你的问题,请参考以下文章