数组对象循环遍历动态生成类似table表

const ExchangeMeta = () => {
  let obj = {
  	//可自由添加任意名称属性
    detail: [
      {
        a: "1",
        b: "2",
        c: "3",
        d: "4",
        //e:"5",
      },
      {
        a: "1",
        b: "2",
        c: "5",
        d: "4",
        //e:"5",
      },
    ]
  }

  const [data, setData] = useState(obj.detail)

  const [row, setRow] = useState<any>()

  useEffect(() => {
    setRow(Object.keys(data[0]))
  }, [])

  return (
    <div>
      {
        data.map((item: any, index: any) => {
          return (
            //遍历每行
            <div key={index} style={{ display: "flex" }}>
              {
                //遍历每列
                row && row.length > 0 ? row.map((item1: any, index1: number) => {
                  return (
                  	//控制是否隐藏
                    item[item1] !== "3" ?
                      <div key={index1} >
                        <div style={{ width: "10px" }}>{item[item1]}</div>
                      </div> : <div style={{ width: "10px" }}></div>
                  )
                }) : ""
              }
            </div>
          )
        })
      }
    </div>
  )
}

展示图如下
在这里插入图片描述

POI-TL (Poi Transfer Library) 是一个基于 Apache POI 的 Java 库,它提供了一种更简单的方式来处理 Microsoft Office 格式文件,如 Excel 和 Word。当你需要将数据转换成 Word 文档中的格,并能够按需生成多个格时,你可以使用它的 API 来实现。 以下是一个简单的步骤说明: 1. **添加依赖**:首先确保你已经在项目中添加了 poi-tl 的依赖。如果你使用的是 Maven,可以在 `pom.xml` 中添加如下依赖: ```xml <dependency> <groupId>com.alibaba.poi</groupId> <artifactId>poi-tl</artifactId> <version>4.x.y</version> <!-- 更新到最新的版本 --> </dependency> ``` 2. **创建文档对象**:创建一个 `XWPFDocument` 对象来代 Word 文档。 ```java XWPFDocument document = new XWPFDocument(); ``` 3. **创建模板**:你可以创建一个 `XWPFTable` 对象作为格模板,然后复制到每个新格中。 ```java XWPFTable table = document.createTable(); ``` 4. **数据准备**:假设你有一个二维数组,包含格的数据。例如,`data[][]`。 5. **循环遍历并生成格**:使用一个 for 循环遍历数据,每次迭代生成一个新的格并将数据填入。 ```java for (int i = 0; i < data.length; i++) { // 创建新的格 XWPFTable newTable = document.createTable(); // 将数据行填充到格中 for (int j = 0; j < data[i].length; j++) { XWPFTableRow newRow = newTable.addRow(); XWPFTableCell cell = newRow.createCell(); cell.setCellValue(data[i][j]); } // 可选操作:设置格标题、样式等 } ``` 6. **保存文档**:最后,你需要将文档保存为 .docx 文件。 ```java try { document.write(new File("output.docx")); } catch (IOException e) { e.printStackTrace(); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蛋蛋的老公

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值