为什么 antd table 自动添加了 `+` ,如何删除 `+`

why the antd table added `+ ` automaticlly, how to remove the `+`

我正在使用 antd "antd": "^3.26.3", 开发一个应用程序,现在 table 有一个 + 像这样:

我没有添加任何设置来添加+,为什么+出来了?我应该怎么做才能删除 +?这是我的 antd table 源代码:

<div className={styles.tableList}>
            <StandardTable
              rowSelection={{
                type: 'checkbox',
                ...rowSelection,
              }}
              loading={loading}
              data={data}
              columns={this.columns}
              selectedRows={[]}
              rowKey="_index"
              hideAlert
              disablePagination={false}
              expandIconAsCell={false}
              expandIconColumnIndex={-1}
              onChange={this.handleStandardTableChange}
            />
          </div>

我已尝试添加此配置,但仍然没有使 + 消失,我应该如何修复它?

expandIconAsCell={false}
expandIconColumnIndex={-1}

antd Table组件中,+图标代表一行,点击可展开。默认情况下,它不会展开,因此当您单击 + 时它会展开。

基本上有两种情况+可以出现在table的行中。

  1. 使用expandable api, expandable api 允许我们通过单击 + 或任何地方来渲染某些东西(数据)在整行中(这可以通过 expandRowByClick 设置为真)。可以找到这种情况的常见示例 here.

  2. data 道具中使用 children 属性。 Example.
    即使 children 属性 有一个空数组,它仍然会显示 + 图标,当它被点击时,它会展开一些额外的空间,但里面没有数据。

注意:你不应该在一个 antd 中同时使用这两种方式 Table。因此,您总是必须根据用例选择一种方式而不是另一种方式。


在你的例子中,你提到你的数据集中有 children 属性,这是一个布尔值,与 children 属性 的目的不同antd table 数据集。

正如我在评论中提到的,您只需要将 children 属性 别名为其他名称,也许 haveChildren 将您的数据集映射到自定义数据集时。