我尝试使用papa parse解析10Mb CSV文件,该文件包含有关经度和纬度的数据。
我使用了step函数将这些点绘制在MapBox上。
fileInput = async e => {
const file = e.target.files[0];
Papa.parse(file,
{
download: true,
worker: true,
header: true,
step: function (row) {
let from_lat = parseFloat(row.data.from_lat);
let from_long = parseFloat(row.data.from_long);
let to_lat = parseFloat(row.data.to_lat);
let to_long = parseFloat(row.data.to_long);
if ( (!(Number.isNaN(from_lat))) && (!(Number.isNaN(from_long))) ) {
new mapboxgl.Marker()
.setLngLat([from_lat,from_long])
.addTo(map);
}
if ( (!(Number.isNaN(to_lat))) && (!(Number.isNaN(to_long))) ) {
new mapboxgl.Marker()
.setLngLat([to_lat,to_long])
.addTo(map);
}
},
});
}
如果我减小CSV中的数据大小,则MapBox可以正常工作,但是当我使用10Mb CSV时,MapBox上没有绘制点,并且浏览器(Chrome)崩溃了。