2017-12-22 4 views
2

Ich sende Daten von einer React-Komponente zu einer anderen, aber es ist nicht in der Form/Format, die ich erwarte und ich habe Probleme zu debuggen, was das Problem ist.Array Shape Error

Ich habe Konsole angemeldet sowohl was das Array aussehen sollte, und was es kommt durch wie:

enter image description here

Die Anordnung auf der Oberseite ist der „gute“ Array, während die auf dem unten ist, was mein Array derzeit durchkommt.

Was ist der Unterschied zwischen (7) [{}}] und [Array (7)]?

Antwort

1

Sie haben eine 1-dimensionales Array und einen 2-dimensionalen Array:

const arr1 = [{pv:1}, {pv:2}]; 
 
const arr2 = [[{pv:1}, {pv:2}]]; 
 

 
console.log(arr1); 
 
console.log(arr2);

0

Was ist der Unterschied zwischen (7) [{} .....] und [Array (7)]?

Die erste Option bedeutet, dass Sie Objekte in einem Array haben. Die zweite Option bedeutet, dass Sie ein Array mit einem Array haben.

Zum Beispiel könnte die erste Option die folgende sein.

[ 
    {}, 
    {}, 
    {}, 
    {}, 
    {}, 
    {}, 
    {} 
] 

Die zweite Option könnte die folgende sein.

[ 
    [ 
     {}, 
     {}, 
     {}, 
     {}, 
     {}, 
     {}, 
     {} 
    ] 
] 
0

Ich denke, wenn Sie den zweiten Wert wie console.log(secondArray[0]) statt console.log(secondArray) als Druck wie das aussehen soll Erster. Hier ist das Konsolenbeispiel:

var test1 = [{name:1,pv:25},{name:2,pv:75}]; 
[Object, Object] 
var test2 = [[{name:1,pv:25},{name:2,pv:75}]] 
[Array[2]] 
test2[0] 
[Object, Object]