使用高级 Chakra UI 组件更快地构建 💎

了解更多
跳到内容
文档演练场指南博客
赞助

空状态

用于指示资源为空或不可用时的情况。

源码Storybook配方

您的购物车为空

浏览我们的产品并添加商品到您的购物车

用法

import { EmptyState } from "@chakra-ui/react"
<EmptyState.Root>
  <EmptyState.Content>
    <EmptyState.Indicator />
    <EmptyState.Title />
    <EmptyState.Description />
  </EmptyState.Content>
</EmptyState.Root>
信息
如果您倾向于封闭组件组合,请查看下面的代码片段

示例

尺寸

使用 size 属性设置空状态的尺寸。

您的购物车为空

浏览我们的产品并添加商品到您的购物车

您的购物车为空

浏览我们的产品并添加商品到您的购物车

您的购物车为空

浏览我们的产品并添加商品到您的购物车

操作

这是一个带有操作按钮的空状态示例。

开始添加令牌

添加一个新的设计令牌以开始

列表

这是一个带有列表的空状态示例。

未找到结果

尝试调整您的搜索

  • 尝试移除筛选器
  • 尝试不同的关键词

封闭组件

以下是如何为封闭组件组合设置空状态。

import { EmptyState as ChakraEmptyState, VStack } from "@chakra-ui/react"
import * as React from "react"

export interface EmptyStateProps extends ChakraEmptyState.RootProps {
  title: string
  description?: string
  icon?: React.ReactNode
}

export const EmptyState = React.forwardRef<HTMLDivElement, EmptyStateProps>(
  function EmptyState(props, ref) {
    const { title, description, icon, children, ...rest } = props
    return (
      <ChakraEmptyState.Root ref={ref} {...rest}>
        <ChakraEmptyState.Content>
          {icon && (
            <ChakraEmptyState.Indicator>{icon}</ChakraEmptyState.Indicator>
          )}
          {description ? (
            <VStack textAlign="center">
              <ChakraEmptyState.Title>{title}</ChakraEmptyState.Title>
              <ChakraEmptyState.Description>
                {description}
              </ChakraEmptyState.Description>
            </VStack>
          ) : (
            <ChakraEmptyState.Title>{title}</ChakraEmptyState.Title>
          )}
          {children}
        </ChakraEmptyState.Content>
      </ChakraEmptyState.Root>
    )
  },
)

如果您想自动将封闭组件添加到您的项目中,请运行此命令

npx @chakra-ui/cli snippet add empty-state

属性

属性默认类型
colorPalette 'gray'
'gray' | 'red' | 'orange' | 'yellow' | 'green' | 'teal' | 'blue' | 'cyan' | 'purple' | 'pink'

组件的颜色调色板

size 'md'
'sm' | 'md' | 'lg'

组件的尺寸

上一个

可编辑

下一个

字段