Antd UI库.覆盖空数据上的<Table />行为

Фед*_*ков 1 reactjs antd

如果<Table />收到空数据数组,我想渲染一些其他内容.
目前它只是显示'No data',但我想在那里放一些自定义组件.

空数据属性的当前默认行为

怎么做到这一点?

小智 12

还有另一种方法可以做到这一点,而无需触及locale属性:

<Table />用 a包裹<ConfigProvider />并设置renderEmpty属性:

<ConfigProvider renderEmpty={() => <Empty description="Custom message"/>}>
  <Table />
</ConfigProvider>
Run Code Online (Sandbox Code Playgroud)

renderEmpty函数可以返回您想要的任何组件。

更多详细信息:https : //ant.design/components/config-provider/#API文档示例:https : //ant.design/components/empty/#components-empty-demo-config-provider


Nik*_*rao 10

您可以使用localeantd table 的道具,即Object. 而不是传递只是传递stringemptyText你可以传递HTML标签。

let locale = {
  emptyText: (
    <span>
      <p>
        <Icon type="like" />
        Custom Message
      </p>
      <Button>Custom Button</Button>
    </span>
  )
};

<Table locale={locale}  dataSource={dataSource} columns={columns} />
Run Code Online (Sandbox Code Playgroud)


May*_*kla 6

有桌子的财产locale.这是一个object,用于define以下事情:

filterConfirm,filterReset,emptyText.

使用emptyText指定text要显示,如果dataempty.像这样:

let locale = {
  emptyText: 'Abc',
};

<Table locale={locale}  dataSource={dataSource} columns={columns} />
Run Code Online (Sandbox Code Playgroud)

查看Doc:https://ant.design/components/table/

  • 我以为它只是改变了短信,但实际上它也替换了图标。 (2认同)