Skip to main content

表述 Descriptions

一个用于展示数据项列表的响应式描述组件,支持列数控制、边框样式以及内容合并。


📦 引入方式

import { Descriptions } from '@npmqg/react-ui-descriptions';

🧩 使用示例

📚 基础用法

姓名
张三
年龄
28
性别
住址
北京市

📚 带边框 + 自定义列参数

项目
ChatGPT UI
版本
1.0.0
作者
OpenAI

📚 多列布局

用户名
张三
邮箱
test@example.com
电话
12345678
地址
北京市海淀区

📚 Label 对齐方式

姓名
王五
年龄
28

📚 自定义背景色

工号
A2001
职位
设计师

📚 自定义 Label 宽度

标题
自定义宽度 Label
内容
右侧内容区域

🧩 Props

参数类型默认值描述
itemsDescriptionItem[][]描述项数组,每个元素包含 labelchildrenspan
borderedbooleanfalse是否显示边框
itemClassNamestring-自定义 item 容器样式类名
labelBgstringbg-sectionLabel 区域背景色
contentBgstring-内容区域背景色
labelAlign'left' | 'center' | 'right''left'Label 对齐方式
columnsnumber1每行显示的最大列数
labelWidthstring | number-Label 宽度(如 100px120
classNamestring-外层容器样式类名

🧱 类型定义

interface DescriptionItem {
label: React.ReactNode;
children: React.ReactNode;
span?: number; // 占几列
}

export interface DescriptionsProps extends React.HTMLAttributes<HTMLDivElement> {
items: DescriptionItem[];
bordered?: boolean;
itemClassName?: string;
labelBg?: string;
contentBg?: string;
labelAlign?: 'left' | 'center' | 'right';
columns?: number;
labelWidth?: string | number;
}

✨ 特性

  • 灵活的 分行/跨列 控制(span
  • 支持 边框模式
  • 可自定义 label 背景 和 内容背景
  • label 对齐固定宽度 支持

💅 样式说明

  • 默认 label 背景:bg-section
  • 默认内容背景:透明
  • label 内边距:px-4 py-2
  • 内容内边距:px-4 py-2
  • 支持文字过长自动换行