Arrays 对象作为Datatable中的React子错误无效

Arrays 对象作为Datatable中的React子错误无效,arrays,reactjs,object,datatable,Arrays,Reactjs,Object,Datatable,好的,当我试图从我的web api返回一些数据时,我遇到了这个错误。我在其他类似的帖子上尝试了所有建议,但都没能奏效。谢谢你的帮助 对象作为React子对象无效(找到:键为{addressType,address1,address2,city,county,postCode,country,id}的对象)。如果要呈现子对象集合,请改用数组 数据 "rows": [ { "company": null, "controlPanel":

好的,当我试图从我的web api返回一些数据时,我遇到了这个错误。我在其他类似的帖子上尝试了所有建议,但都没能奏效。谢谢你的帮助

对象作为React子对象无效(找到:键为{addressType,address1,address2,city,county,postCode,country,id}的对象)。如果要呈现子对象集合,请改用数组

数据

"rows": [
        {
            "company": null,
            "controlPanel": null,
            "name": "Basement",
            "cloudAccessEnabled": true,
            "notes": "quad volcans quad quo si imaginator volcans brevens, nomen gravum Multum plorum brevens, in e quo quad",
            "addresses": [
                {
                    "addressType": "HeadOffice, Marketing",
                    "address1": "729 Rocky First Blvd.",
                    "address2": "APT 22",
                    "city": "Haverhill",
                    "county": "Dunbartonshire",
                    "postCode": "SL1 9GH",
                    "country": null,
                    "id": "62a494ee-37cf-3021-5a29-00b54adc9255"
                }
            ],
            "installers": null,
            "lastMaintenance": "2016-06-30T00:00:00",
            "nextMaintenance": "0001-01-01T00:00:00",
            "latestResult": "None Yet",
            "id": "c0d44330-8369-0e78-f45b-000142b59fa8"
        },
我如何尝试在datatable中显示。。。

//这很管用
//单元格:行=>{row.notes},
//DoesNot work对象作为React子错误无效
单元格:行=>(
{row.addresses.map((addressType,id)=>(
{addressType}
))}
),

应该是这样的:

cell: row => (
        <div>
          {row.addresses.map(({ addressType, id }) => (
            <div key={id}>{addressType}</div>
          ))}
        </div>
      ),
单元格:行=>(
{row.addresses.map({addressType,id})=>(
{addressType}
))}
),

您在map函数中传递的
地址类型
不是您认为要传递的,该地址类型实际上是该迭代的
地址[i]
,因此您应该做的是:
{adrestype.adrestype}
。将map函数中的
addresstype
更改为更好的名称,如
address
,然后执行
address.id
address.addresstype
,并从map函数中删除
id
。或者您可以执行@jojoutor下面所说的操作并对其进行解构。感谢已修复对象作为子错误无效,但是现在我得到了未捕获的类型错误:无法读取Null的属性“map”如果某些“行”没有“addresses”属性,请尝试以下操作:{row.addresses&&row.addresses.map(({addressType,id})=>({addressType}))}很乐意帮助。。。!
cell: row => (
        <div>
          {row.addresses.map(({ addressType, id }) => (
            <div key={id}>{addressType}</div>
          ))}
        </div>
      ),