R后悔药 Rue.js
  • 首页
    • 深度指南
    • 实战例子
    • 快速上手
    • 路由指南
    • 术语表
    • 错误代码参考
  • API
    • 合作伙伴
    • 插件
    • 组件库
    • 工具链
    • Text.js
    • 新闻简报
    • 常见问题
    • 团队
    • 版本发布
    • 社区指南
    • 行为规范
    • 隐私政策
  • 赞助
  • 合作伙伴
设置
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window

Dock 底部栏

Dock 用来承载移动端底部导航和轻量操作入口。当前组件保持 Rue 自己的视觉基底,同时补上更顺手的导航 API:可以用activeIndex,也可以切到更语义化的activeKey/onSelect模式。

何时使用

  • 需要一个固定在底部的轻量导航,让用户在 3 到 5 个主入口之间快速切换。
  • 需要同时支持基础的索引式控制和新的 key 式控制。
  • 需要在同一套视觉里混合按钮、链接、禁用项和自定义 children。

# 基础导航

展示基础 Dock 演示,可以使用 activeIndex 控制。

# Key 模式与禁用项

activeKey / onSelect 更适合导航语义,items 里也可以直接声明 disabled、href 和 target。

当前选中:inbox
Docs

# 组合写法与根节点

支持 Dock.Item / Dock.Label 组合;当需要更细粒度结构时,children 写法更直接。

当前区块:activity
Overview
Profile

# 尺寸体系

展示 xs / sm / md / lg / xl 演示,并把它们重组到一个尺寸对照区。

Extra Small
Small
Medium
Large
Extra Large

# 自定义外观

展示自定义色示例。Dock 不强行定义额外主题 API,仍然优先通过 className 融入业务表面层。

# Dock 自动渲染(items 数组)

展示 items 数组示例,并组织为 key 驱动、默认值和项级类名都可直接声明。

当前 key:inbox

API

当前页面展示的是 Dock 在 Rue 里的推荐用法与可用能力。

Dock

属性说明类型默认值
as根节点语义,可直接输出 div 或 nav'div' | 'nav''div'
sizeDock 尺寸,支持 xs-xl 与 small / middle / large 别名'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'small' | 'middle' | 'medium' | 'large'-
items数据驱动渲染,每项可配置 key、icon、label、href、disabled 等DockItemData[]-
activeIndex支持基础的受控索引写法number-
defaultActiveIndex索引模式下的默认选中项number-
activeKey推荐的受控选中 keystring | number | null-
defaultActiveKey推荐的非受控默认 keystring | number | null-
onChange索引变化回调,保持回调签名,同时附带上下文(index, context) => void-
onSelectkey 变化回调,适合导航场景(key, context) => void-
className附加到 dock 根节点的类名string-

Dock.Item

属性说明类型默认值
as单项渲染标签,可选 button、a、div'button' | 'a' | 'div''button'
active激活态,追加 dock-activebooleanfalse
disabled禁用单项;链接和 div 也会输出禁用语义booleanfalse
href / target / rel链接语义;target="_blank" 时会自动补充 relstring-
htmlTypebutton 根节点时的原生 type'button' | 'submit' | 'reset''button'
ariaLabel仅图标项时可补充可访问名称string-
className附加到单项根节点的类名string-

items 项配置

属性说明类型默认值
key数据驱动模式下的唯一标识,供 activeKey / onSelect 使用string | numberindex
icon图标节点any-
label标签节点,会自动包裹为 Dock.Labelany-
iconClassName / labelClassName分别控制图标容器与标签的附加样式string-
onClick单项点击回调,签名为 (event, context) => voidfunction-
disabled禁用当前项,保持当前视觉但阻止交互booleanfalse

推荐使用顺序

items + activeKey + onSelect:适合页面导航
items + activeIndex + onChange:适合支持项目代码
children + Dock.Item:适合复杂结构和混合根节点
className:负责和业务表面层融合颜色与边框

FAQ

activeKey 和 activeIndex 应该优先选哪个?

新页面建议优先用activeKey,因为它更贴近导航语义,也更方便和路由、菜单数据对齐。 如果你当前已经是索引式状态,可以使用activeIndex也没有问题。

什么时候用 items,什么时候用 Dock.Item?

结构规整、希望统一从数据渲染时,优先用items。如果单项内部结构更复杂,或者需要同时混用a、button、div,就直接用Dock.Item。

为什么没有额外提供 tone / variant 这类视觉 API?

Dock 更像布局型导航容器,视觉通常要贴合页面表面层一起定。这里优先补的是导航和交互语义,让className继续承担颜色与背景融合,避免把视觉层做得过重。

页内导航
页内导航
文档
  • 深度指南
  • 实战例子
  • 快速上手
  • 术语表
  • 错误码参照表
关于
  • 常见问题
  • 团队
  • 版本发布
  • 社区指南
生态
  • 插件
  • 组件库
  • 路由指南
  • Text.js
© 2024-2026 Xiangmin Liu
Rue.JS