@buoy-gg/bottom-sheet

中文文档
7.0.87发布于 2026/11/07TypeScriptESM + CJS近 30 天下载 4558

底板和浮动窗口组件用于React Introduct,有可配置的演示和本地-干动画.

中文使用文档
文档目录17 节
  1. 特征
  2. 安装
  3. 基本用途
  4. 高级使用
  5. 自定义 主题
  6. 带页脚
  7. 自定义信头
  8. 浮动窗口模式
  9. 高度控制
  10. 道具
  11. 底盘方案
  12. 下页头配置
  13. 手势
  14. 业绩
  15. 类型脚本
  16. 许可证
  17. 贷项

@ buoy- gg/ 下表

A React 本地组件,带有下表和浮动窗口模式,可配置标题和页脚,以及拖放到大小的手势.

特征

  • 📱 双模式 - 底页和浮动窗口模式
  • 🎨 完全自定义 - 自定义标题、主题和样式
  • ✋ 触摸手势 - 拖放以调整大小, 双拖放以切换模式, 三拖放以关闭
  • 🔄 平滑过渡 - 以春为主的自然感觉动画
  • 📐 智能边界 - 尊重安全地区和筛选边界
  • 依赖关系 - 要求反应和反应原生并使用Buoy共享的用户界面软件包
  • 🎯 类型脚本 - 全面安全和情报支持

安装

npm install @buoy-gg/bottom-sheet
# or
yarn add @buoy-gg/bottom-sheet
# or
pnpm add @buoy-gg/bottom-sheet

基本用途

import React, { useState } from 'react';
import { View, Text, Button } from 'react-native';
import { BottomSheet } from '@buoy-gg/bottom-sheet';

function MyComponent() {
  const [visible, setVisible] = useState(false);

  return (
    <View>
      <Button title="Open Bottom Sheet" onPress={() => setVisible(true)} />

      <BottomSheet
        visible={visible}
        onClose={() => setVisible(false)}
        header={{
          title: "My Bottom Sheet",
          subtitle: "Drag to resize"
        }}
      >
        <View style={{ padding: 20 }}>
          <Text>Your content here!</Text>
        </View>
      </BottomSheet>
    </View>
  );
}

打开工作表,拖取其头,切换模式,并关闭检查基本整合.

高级使用

这些片段重复使用 visible,其设置器,以及您自己的内容或从周围组件中保存处理器.

自定义 主题

<BottomSheet
  visible={visible}
  onClose={() => setVisible(false)}
  theme={{
    primary: '#FF6B6B',
    secondary: '#4ECDC4',
    background: '#1A1A2E',
    panel: '#16213E',
    success: '#06FFA5',
  }}
>
  <YourContent />
</BottomSheet>
<BottomSheet
  visible={visible}
  onClose={() => setVisible(false)}
  footer={
    <View style={{ padding: 16, borderTopWidth: 1, borderTopColor: '#ccc' }}>
      <Button title="Save" onPress={handleSave} />
    </View>
  }
  footerHeight={60}
>
  <YourContent />
</BottomSheet>

自定义信头

<BottomSheet
  visible={visible}
  onClose={() => setVisible(false)}
  header={{
    customContent: (
      <View style={{ padding: 16 }}>
        <Text style={{ fontSize: 18, fontWeight: 'bold' }}>
          Custom Header
        </Text>
      </View>
    )
  }}
>
  <YourContent />
</BottomSheet>

浮动窗口模式

<BottomSheet
  visible={visible}
  onClose={() => setVisible(false)}
  initialMode="floating"
  onModeChange={(mode) => console.log('Mode changed to:', mode)}
>
  <YourContent />
</BottomSheet>

高度控制

<BottomSheet
  visible={visible}
  onClose={() => setVisible(false)}
  initialHeight={500}
  minHeight={200}
  maxHeight={800}
>
  <YourContent />
</BottomSheet>

道具

底盘方案

Prop类型默认说明
visibleboolean所需经费控制底页的可见度
onClose() => void所需经费工作表关闭时召回
childrenReactNode所需经费在工作表中显示的内容
headerBottomSheetHeaderConfigundefined页眉配置
stylesCustomStyles{}容器和内容的自定义样式
minHeightnumber100底页模式最小高度
maxHeightnumberscreen height - safe area底工作表模式的最大高度
initialHeightnumber400底层工作表模式的初始高度
initialMode'bottomSheet' | 'floating''bottomSheet'初始显示模式
onModeChange(mode) => voidundefined模式改变时召回
footerReactNodeundefined页脚内容( 在底部粘贴)
footerHeightnumber0内容粘贴页脚的高度
onBack() => voidundefined召回回后动作( 可操作于左上角水龙头)
themePartial<Theme>defaultTheme自定义颜色主题

下页头配置

Prop类型说明
titlestring标题文本
subtitlestring页眉字幕文本
customContentReactNode自定义标题内容( 替换标题/ 子标题)
hideCloseButtonboolean隐藏关闭按钮

手势

  • 拖动页眉 - 调整底盘大小或移动浮动窗口
  • 双磁带头 - 切换底层工作表和浮动模式
  • 三重磁带头 - 关闭工作表
  • 拖放角( 浮动) - 调整浮动窗口的大小
  • TAP 右上角 (浮起) - 关闭工作表
  • Tap Top- Left Corner (浮出水面) - 触发后动作(如果 onBack (已提供)
  • 快速刷下 - 关闭底页

业绩

该组件使用回放原生动画和手势. 实际帧率取决于设备负荷,工作表内容,以及您的应用程序. 配置文件拖放和重新调整具有代表性的内容 .

类型脚本

导出类型的全类型脚本支持 :

import {
  BottomSheet,
  BottomSheetProps,
  BottomSheetMode,
  BottomSheetHeaderConfig
} from '@buoy-gg/bottom-sheet';

许可证

麻省理工学院

贷项

基于React Independent Buoy工具包中证明的JsModal组件.

版本与发布记录

@buoy-gg/bottom-sheet 共发布 120 个版本,首次发布于 2026/01/04;过去 12 个月发布了 120 个版本。

版本发布日期距今
7.0.87latest2026/11/071 天前
7.0.862026/11/062 天前
7.0.852026/11/053 天前
7.0.842026/11/035 天前
7.0.832026/11/035 天前
7.0.822026/11/036 天前

其他发布通道:beta → 2.1.4-beta.2。

关于 @buoy-gg/bottom-sheet 的常见问题

@buoy-gg/bottom-sheet 是什么?

底板和浮动窗口组件用于React Introduct,有可配置的演示和本地-干动画.

如何安装 @buoy-gg/bottom-sheet?

在项目目录运行 npm install @buoy-gg/bottom-sheet,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(*)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@buoy-gg/bottom-sheet 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@buoy-gg/bottom-sheet 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@buoy-gg/bottom-sheet 可以商用吗?

@buoy-gg/bottom-sheet 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@buoy-gg/bottom-sheet 的下载量有多少?

根据 npm 官方下载统计,@buoy-gg/bottom-sheet 在 2026/10/09 – 2026/11/07 这 30 天内被下载 4,558 次,日均约 152 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@buoy-gg/bottom-sheet 还在维护吗?

最新版本 7.0.87 发布于 2026/11/07(1 天前);至今共发布 120 个版本,其中过去 12 个月发布了 120 个;首次发布于 2026/01/04。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。