Ant*_*vBR 1 javascript csv jquery papaparse
我在这里两次使用此功能来加载csv数据:http : //papaparse.com/
Papa.parse("http://example.com/file.csv", {
download: true,
complete: function(results) {
console.log(results);
}
});
Run Code Online (Sandbox Code Playgroud)
当两个文件都准备好时,我想执行另一个函数,这取决于两个文件的结果。我正在用标记样式化地图。
我想到了JavaScript Promises。有人可以帮我看看如果有2个csv文件/ url,情况会如何?
目前,我已激活以下库:
Jquery 3.2.1
Papa Parse 4
Run Code Online (Sandbox Code Playgroud)
最后,我知道:如何在PapaParse中使用Promises? 但是我不知道将代码放置在2个或更多文件中的位置。
如果该代码必须在较旧的浏览器中运行并且没有本机的Promise或箭头功能,则可以使用以下代码,您需要使用babel和polyfills。
如果您有一组网址,则可以执行以下操作:
urls = ['path1.csv','path2.csv']
Promise.all(//pass array of promises to Promise.all
urls//you have an array of urls
.map(//map urls to promises created with parse
url=>
new Promise(//create one promise
(resolve,reject)=>
Papa.parse.parse(
url,
{
download: true,
complete:resolve,//resolve the promise when complete
error:reject//reject the promise if there is an error
}
)
)
)
)
.then(
function (results) {
console.log(results[0]) // log result from file 1
console.log(results[1]) // log result from file 2
}
)
.catch(//log the error
err=>console.warn("Something went wrong:",err)
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1107 次 |
| 最近记录: |