问题描述
两个控制台输出之间的 JS 对象数组有区别吗?第一个显示包含所有 7 个对象的椭圆列表。在第二个中,它显示一个空列表,但是当我展开时,所有 7 个 javascript 对象都在那里。
我还在两者上运行了 Array.isArray,结果都是“真”。
第一个是来自 Recharts 的代码示例的复制/粘贴,其中“数据”作为对象数组在本地提供。这样,图表就会显示出来。
这是他们提供的数据:
export const data = [
{
name: "Page A",uv: 4000,pv: 2400,amt: 2400,},{
name: "Page B",uv: 3000,pv: 1398,amt: 2210,{
name: "Page C",uv: 2000,pv: 9800,amt: 2290,{
name: "Page D",uv: 2780,pv: 3908,amt: 2000,{
name: "Page E",uv: 1890,pv: 4800,amt: 2181,{
name: "Page F",uv: 2390,pv: 3800,amt: 2500,{
name: "Page G",uv: 3490,pv: 4300,amt: 2100,];
我用 csv 格式替换了本地“数据”变量并转换为 Recharts 所需的数组。但是,图表不显示。
这里是csv格式: 名称,紫外线,光伏,amt “A页”,4000,2400,2400 “B页”,3000,1398,2210 “C页”,2000,9800,2290 “D页”,2780,3908,2000 “E页”,1890,4800,2181 “F页”,2390,3800,2500 "页面 G",3490,4300,2100
这是转换为对象数组的代码:
import React,{ useEffect } from "react";
import { csv } from "d3";
const csvSimpleLineChartUrl =
"https://gist.githubusercontent.com/ny2cali/bda7d4c7039300ee06e85ad8ccdc59a6/raw/SimpleLineChartData.csv";
export const useData = () => {
let data2 = [];
useEffect(() => {
const row = (d) => {
let data = {
name: d.name,uv: +d.uv,pv: +d.pv,amt: +d.amt,};
data2.push(data);
return data;
};
csv(csvSimpleLineChartUrl,row);
},[]);
return data2;};
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)