简体   繁体   English

如何从二维数组 react.js 中检索数据

[英]How to retrieve data from 2d array react.js

I am retrieving data from one component in react that is being passed into another component as a 2d array.我正在从作为二维数组传递到另一个组件的 react 中的一个组件中检索数据。

console.log(this.props.cheatsheet) Results in [object Object],[object Object] console.log(this.props.cheatsheet)结果在[object Object],[object Object]

console.log(JSON.stringify(this.props.dashboards)); shows me the arrays values below向我展示了下面的数组值

[  
   {  
      "name":"Test",
      "description":"TEest",
      "filter":[  
         "201158",
         "200461",
         "201345"
      ],
      "KPIs":[  

      ]
   },
   {  
      "name":"Asset Owner Dashboard",
      "description":"Description for Asset Owner Dashboard",
      "filter":[  
         "201732",
         "222323",
         323244
      ],
      "KPIs":[  
         {  
            "name":"Asset",
            "charts":[  
               {  
                  "name":"Details"
               }
            ]
         },
         {  
            "name":"Incidents",
            "charts":[  
               {  
                  "name":"Count by AssignmentGroup"
               },
               {  
                  "name":"COE Open Tickets"
               },
               {  
                  "name":"NEW IM in Last 48hrs"
               }
            ]
         },
         {  
            "name":"Problem Tickets",
            "charts":[  
               {  
                  "name":"Count by Status"
               },
               {  
                  "name":"Open PMR"
               },
               {  
                  "name":"Details"
               }
            ]
         }
      ]
   }
]

what is the best way for me to map the filter array from test and Asset Owner Dashboard我从测试和资产所有者仪表板映射过滤器数组的最佳方法是什么

You can make use of nested maps to render you data.您可以使用嵌套地图来呈现您的数据。 just like the below example就像下面的例子

 class App extends React.Component { render(){ var arr = [ { "name":"Test", "description":"TEest", "filter":[ "201158", "200461", "201345" ], "KPIs":[ ] }, { "name":"Asset Owner Dashboard", "description":"Description for Asset Owner Dashboard", "filter":[ "201732", "222323", 323244 ], "KPIs":[ { "name":"Asset", "charts":[ { "name":"Details" } ] }, { "name":"Incidents", "charts":[ { "name":"Count by AssignmentGroup" }, { "name":"COE Open Tickets" }, { "name":"NEW IM in Last 48hrs" } ] }, { "name":"Problem Tickets", "charts":[ { "name":"Count by Status" }, { "name":"Open PMR" }, { "name":"Details" } ] } ] } ] return ( <tbody> {arr.map(function(item){ return ( <tr> {item.filter.map(function(val){ return <td>{val}</td> })} </tr> ) })} </tbody> ) } } ReactDOM.render(<App/>, document.getElementById('app'));
 <script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.8/react.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.8/react-dom.min.js"></script> <div id="app"></div>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM