JGuang / JGuang UI
Components组件Radix UIRadix UI 组件

Drawer

A drawer component for React.

Partially translated: Chinese navigation, titles, descriptions, and common headings. The technical body is currently in English.

About

Drawer is built on top of Vaul by emilkowalski.

Installation

Command

Manual

Use the JGuang UI Registry URL provided on /systems/jguang-ui#install.

Install the following dependencies:

npm install vaul

Copy and paste the following code into your project.

View complete source: components/ui/drawer.tsx

Update the import paths to match your project setup.

Usage

import {
  Drawer,
  DrawerClose,
  DrawerContent,
  DrawerDescription,
  DrawerFooter,
  DrawerHeader,
  DrawerTitle,
  DrawerTrigger,
} from "@/components/ui/drawer"
<Drawer>
  <DrawerTrigger>Open</DrawerTrigger>
  <DrawerContent>
    <DrawerHeader>
      <DrawerTitle>Are you absolutely sure?</DrawerTitle>
      <DrawerDescription>This action cannot be undone.</DrawerDescription>
    </DrawerHeader>
    <DrawerFooter>
      <Button>Submit</Button>
      <DrawerClose>
        <Button variant="outline">Cancel</Button>
      </DrawerClose>
    </DrawerFooter>
  </DrawerContent>
</Drawer>

Composition

Use the following composition to build a Drawer:

Drawer
├── DrawerTrigger
└── DrawerContent
    ├── DrawerHeader
    │   ├── DrawerTitle
    │   └── DrawerDescription
    └── DrawerFooter

Scrollable Content

Keep actions visible while the content scrolls.

Loading JGuang UI example…

Sides

Use the direction prop to set the side of the drawer. Available options are top, right, bottom, and left.

Loading JGuang UI example…

Responsive Dialog

You can combine the Dialog and Drawer components to create a responsive dialog. This renders a Dialog component on desktop and a Drawer on mobile.

Loading JGuang UI example…

RTL

To enable RTL support in JGuang UI, see the RTL configuration guide.

Loading JGuang UI example…

API Reference

See the Vaul documentation for the full API reference.

Source: components/radix/drawer.mdx

Technical documentation for JGuang UI.

On this page