javascript - 如何在 React Native 中使用数组对象迭代数组

标签 javascript arrays reactjs loops react-native

我开始在 React Native 中编程,我有一个像这样的数组:

state = {
    territories: [
        {
            id: 1,
            number: 1,
            title: 'Territory 1',
            streets: [
                {
                    id: 1,
                    name: 'Name of street 1',
                    houses: [
                        {
                            id: 1,
                            number: '11',
                        },
                        {
                            id: 2,
                            number: '689',
                        },
                        {
                            id: 3,
                            number: '117a',
                        },
                    ],
                },
                {
                    id: 2,
                    nome: 'Name of street 2',
                    houses: [
                        {
                            id: 4,
                            number: '02',
                        },
                        {
                            id: 5,
                            number: '655',
                        },
                        {
                            id: 6,
                            number: '11b',
                        },
                    ],
                },
            ],
        },
    ],
};

我想用 .map() 函数迭代它,以便创建像这样的节列表 example 但我无法在街道数组中迭代房屋的数字数组。 有没有办法用 React Native 来做到这一点? 预先非常感谢您

最佳答案

您需要一张 map 来遍历各个地区,然后遍历街道和房屋。 将代码复制粘贴到codesandbox.io react 沙箱中。您可以修复 html 以使用表格

import React from "react";
import ReactDOM from "react-dom";

import "./styles.css";

const state = {
  territories: [
    {
      id: 1,
      number: 1,
      title: "Territory 1",
      streets: [
        {
          id: 1,
          name: "Name of street 1",
          houses: [
            {
              id: 1,
              number: "11"
            },
            {
              id: 2,
              number: "689"
            },
            {
              id: 3,
              number: "117a"
            }
          ]
        },
        {
          id: 2,
          name: "Name of street 2",
          houses: [
            {
              id: 4,
              number: "02"
            },
            {
              id: 5,
              number: "655"
            },
            {
              id: 6,
              number: "11b"
            }
          ]
        }
      ]
    }
  ]
};

function App() {
  return state.territories.map(territory => {
    return territory.streets.map(street => {
      return (
        <div>
          <p>{street.name}</p>
          {street.houses.map(house => <div>{house.number} </div>)}
        </div>
      );
    });
  });
}

const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);

关于javascript - 如何在 React Native 中使用数组对象迭代数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50997140/

相关文章:

html - Flex 重叠 2 个子 flex 布局类连续设置

javascript - 样式未在组件内更新

c - 如何在函数中使用 realloc 创建动态结构数组

javascript - 错误 :Cannot invoke an expression whose type lacks a call signature. 类型“没有兼容的 c ll 签名”

c 制作一个 const 结构数组的副本

arrays - 如何将结构保存到 Realm ,并包含另一个结构的列表

javascript - 前导下划线在 es6 类中转译错误

reactjs - 使用 React UI 和 Spring Boot 服务器实现用户搜索的建议

javascript - 使用 Knockout JS 删除数组中的重复名称

javascript - 我应该绝对避免将 useState 与 redux 一起使用吗?