<!-- CWA Design 0.1.0-alpha.4; Registry sha256:89fa672035ff6dded40573b81274804d8eb2ed6aa8473a30329912a769c9202a -->

[组件 ](/cwa-design/components/)/反馈与浮层

# Sheet抽屉

bottom/end 单展开位抽屉；可拖拽关闭并提供关闭按钮作为替代。

Alpha

移动底部面板或桌面侧滑；支持键盘关闭和单展开位拖动。

[交互示例 ](#examples)[API ](#api)[Storybook ↗ ](/cwa-design/storybook/?path=/story/components-sheet--bottom-sheet)[Registry ↗ ](/cwa-design/downloads/registry/0.1.0-alpha.4/manifest.json)

## 引入

TSX复制

```
import { Sheet } from "@cwa-design/react";
import "@cwa-design/react/styles.css"; // 应用入口引入一次
```

当前通过源码 workspace 使用。[查看有效安装步骤 → ](/cwa-design/docs/getting-started/)

## 交互示例

可切换示例主题、开启实色降级并重置状态。应用根部需要 CwaProvider。

### Sheet 基础用法

可运行示例 · 与复制源码同源

重置

正在准备交互示例…

sheet-basic示例主题跟随网站浅色示例深色示例实色降级

查看与复制源码TSX复制

```
// 应用入口引入 @cwa-design/react/styles.css，并将此示例置于 CwaProvider 内。
import { Button, Sheet, Text } from "@cwa-design/react";

export default function Example() {
  return (
    <Sheet placement="bottom">
      <Sheet.Trigger render={<Button variant="secondary">查看详细信息</Button>} />
      <Sheet.Content>
        <Sheet.Title>工作区详情</Sheet.Title>
        <Sheet.Description>拖动或按关闭按钮返回。</Sheet.Description>
        <Text>一个展开位的底部抽屉；Escape 与关闭按钮提供拖拽替代。</Text>
        <Sheet.Close render={<Button variant="secondary">关闭</Button>} />
      </Sheet.Content>
    </Sheet>
  );
}

```

在应用根部引入 styles.css 并配置 CwaProvider。源码 SHA-256：24fe7a909216

## API

下表读取本版本组件契约。原生与 Base UI 继承属性的完整定义保留在 TypeScript 声明中。

类型：SheetProps · [候选源类型 ↗ ](/cwa-design/downloads/source/packages/react/src/sheet/sheet.tsx)

属性说明类型默认值

open见类型定义boolean—

defaultOpen见类型定义booleanfalse

onOpenChange(open: boolean) => void(open: boolean) => void—

placement见类型定义"bottom" | "end""bottom"

childrenReactNode；内容由调用方提供ReactNode；内容由调用方提供—

### Sheet.Trigger

Base UI Dialog Trigger 类型；CWA 可附加默认样式类。

类型：DialogTriggerProps · 继承 @base-ui/react/dialog#DialogTriggerProps；直接使用 Base UI 1.8.0 完整类型（含原生属性、render/ref） · [候选源类型 ↗ ](/cwa-design/downloads/source/@base-ui/react/dialog/index.d.ts)

没有新增 CWA 属性；完整继承属性见上方源类型声明。

### Sheet.Close

Base UI Dialog Close 类型；CWA 可附加默认样式类。

类型：DialogCloseProps · 继承 @base-ui/react/dialog#DialogCloseProps；直接使用 Base UI 1.8.0 完整类型（含原生属性、render/ref） · [候选源类型 ↗ ](/cwa-design/downloads/source/@base-ui/react/dialog/index.d.ts)

没有新增 CWA 属性；完整继承属性见上方源类型声明。

### Sheet.Title

Base UI Dialog Title 类型；CWA 可附加默认样式类。

类型：DialogTitleProps · 继承 @base-ui/react/dialog#DialogTitleProps；直接使用 Base UI 1.8.0 完整类型（含原生属性、render/ref） · [候选源类型 ↗ ](/cwa-design/downloads/source/@base-ui/react/dialog/index.d.ts)

没有新增 CWA 属性；完整继承属性见上方源类型声明。

### Sheet.Description

Base UI Dialog Description 类型；CWA 可附加默认样式类。

类型：DialogDescriptionProps · 继承 @base-ui/react/dialog#DialogDescriptionProps；直接使用 Base UI 1.8.0 完整类型（含原生属性、render/ref） · [候选源类型 ↗ ](/cwa-design/downloads/source/@base-ui/react/dialog/index.d.ts)

没有新增 CWA 属性；完整继承属性见上方源类型声明。

### Sheet.Content

Sheet 的主题化 Portal/Popup 组合；材质只写在此部件。

类型：SheetContentProps · [候选源类型 ↗ ](/cwa-design/downloads/source/packages/react/src/sheet/sheet.tsx)

属性说明类型默认值

childrenReactNode；内容由调用方提供ReactNode；内容由调用方提供—

className附加样式类；具体合并行为以实现为准string—

material见类型定义"glass-thick" | "solid""glass-thick"

dismissThreshold关闭拖动位移阈值（px）；不代表 snap pointnumber96

## 材质与状态

较厚玻璃材质规则来自源 metadata。覆盖玻璃区域的浮层按实际重叠关系选择较厚或实色材质。

材质属于 Sheet.Content；默认 glass-thick。当前单展开位，无 snapPoints API；Provider solid/系统回退优先。

### 媒体对照舞台

打开浮层，检查玻璃透色、边缘与阴影在真实亮/暗照片上的表现。

真实亮照片真实暗照片自绘明暗分区

打开、选中、禁用与焦点状态叠加在同一背景上；Tab 检查焦点可见性。全视口媒体预览

查看详细信息

适用的状态与行为见示例及本页 API；系统减少透明与显式 solid 配置会启用回退。

[阅读材质指南 → ](/cwa-design/design/materials/)

## 关联 Token

以下变量从组件源样式的实际引用生成。共享光学规则还使用全局玻璃 Token。

--cwa-design-color-scrim--cwa-design-z-dialog--cwa-design-radius-sheet--cwa-design-color-text--cwa-design-font-family--cwa-design-font-size-body--cwa-design-shadow-elevation-large-contact-y--cwa-design-shadow-elevation-large-contact-blur--cwa-design-shadow-elevation-large-ambient-y--cwa-design-shadow-elevation-large-ambient-blur--cwa-design-color-surface-raised--cwa-design-color-border-subtle--cwa-design-shadow-contact-y--cwa-design-shadow-contact-blur--cwa-design-color-glass-contact-shadow--cwa-design-shadow-ambient-y--cwa-design-shadow-ambient-blur--cwa-design-color-glass-ambient-shadow--cwa-design-space-5--cwa-design-color-border-strong--cwa-design-focus-width--cwa-design-color-focus--cwa-design-focus-offset--cwa-design-radius-control--cwa-design-space-2--cwa-design-font-size-title--cwa-design-font-leading-body--cwa-design-space-4--cwa-design-font-size-caption--cwa-design-color-text-muted

[在主题实验室调整公开 Token → ](/cwa-design/themes/)

## 无障碍与使用约束

- semantic-content
- visible-focus-for-interactive-parts
- keyboard-behavior-from-native-or-base-ui

这些是组件契约与使用要求。具体业务页面仍需验证标签、阅读顺序与实际背景下的对比度。

[查看无障碍使用指南 → ](/cwa-design/design/accessibility/)

## 相关组件

[Spinner加载指示 ](/cwa-design/components/spinner/)[Tooltip文字提示 ](/cwa-design/components/tooltip/)[Popover浮动面板 ](/cwa-design/components/popover/)[DropdownMenu下拉菜单 ](/cwa-design/components/dropdown-menu/)
