首页 > 解决方案 > 在地图内映射以获取子数组

问题描述

我有以下数据:

{
"data": {
"site": {
  "siteMetadata": {
    "siteLinks": [
      {
        "title": "title 1",
        "submenu": [
          {
            "title": "test-1",
          }
        ]
      },
      {
        "title": "title 2",
        "submenu": [
          {
            "title": "test-2",
          }
        ]
      },
      {
        "title": "title-3",
        "submenu": [
          {
            "title": "test-3",
          }
        ]
      },
      {
        "title": "title-4",
        "submenu": [
          {
            "title": "test-4",
          }
        ]
      }
    ]
  }
}

} }

我正在尝试映射以获取子菜单标题。我已经设法使用以下代码获得第一个标题,但我正在努力将地图放入地图中。

import React from "react"

const Header = props => (
<div>
    {props.siteLinks.map((item, key) => (
        <div>
            <li key={item.title}>{item.title}</li>
        </div>
    ))}
</div>
)

export default Header

任何帮助将非常感激

标签: javascriptreactjsmapping

解决方案


您可以在第一个地图功能中添加第二个地图功能

import React from 'react';

const Header = props => (
      <div>
       {props.siteLinks.map((item, key) => (
        <div key={item.title}>
            <li>{item.title}</li>
            {item.submenu.map((x)=>(
              <li key={x.title}>{x.title}</li>
            ))}
        </div>
       ))}
    </div>
)

export default Header;

推荐阅读