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

Mockup Code 代码外框

MockupCode 现在同时支持两种写法:展示基础pre + data-prefix 结构,也提供更顺手的items与MockupCode.Line语义 API,适合终端日志、代码片段和差异对比。

何时使用

  • 需要用 Rue 的终端外框包裹一小段安装命令、日志输出或代码片段。
  • 希望把行号、前缀、状态色和高亮行用语义属性表达,而不是手写每个pre。

# 推荐:items 数据驱动

适合命令日志场景,根节点 prefix 可给整组行提供默认前缀。

pnpm add @rue-js/design
Resolving workspace packages...
Done in 2.1s

# 组合子项

需要混合前缀、原生节点和 highlight 时,用 MockupCode.Line 会更直观。

import { MockupCode } from '@rue-js/design'
const lines = [{ children: <code>hello rue</code> }]
<MockupCode items={lines} />

# 自动行号

当前示例先用显式前缀展示带行号片段,预览区可稳定看到完整内容。

import { MockupCode } from '@rue-js/design'
export default function Demo() {
  return <MockupCode lineNumbers items={lines} />
}

# 单行前缀

展示原生写法,适合最简单的安装命令展示。

npm i daisyui

# 多行日志

基础多行示例 展示,适合完全透传现成结构。

npm i daisyui
installing...
Done!

# 高亮与语义色

highlight 和 tone 适合做差异提示、错误定位和关键输出。

npm i daisyui
installing...
Error!
const theme = "light"
const theme = "rue-night"
const panel = createWorkspace(theme)

# 长行滚动

根节点仍然保持最薄的样式层,横向滚动继续交给外层布局容器。

Magnam dolore beatae necessitatibus nemopsum itaque sit. Et porro quae qui et et dolore ratione.

# 无前缀

没有行号或提示符的短内容也可以直接放进 MockupCode。

without prefix

# 自定义底色

组件继续遵循 Rue 的样式组合方式,主题色交给 className 自由叠加。

can be any color!

API

当前页面展示的是语义化的根组件与行组件 API。

MockupCode

属性说明类型默认值
as指定根节点标签any'div'
items数据驱动写法,按数组自动渲染多行ReadonlyArray<MockupCodeLineData>-
prefix为 items 模式下的每一行提供默认前缀,单行可继续覆盖any-
lineNumbers开启后为 items 模式自动补行号,未显式设置 prefix 时会把行号写入 data-prefixbooleanfalse
start自动行号的起始值number1
codeClassNameitems 模式下自动生成的 code 标签类名string-
className追加到 mockup-code 根节点的类名string-

MockupCode.Line / MockupCodeLineData

属性说明类型默认值
prefix当前行前缀,最终写入 data-prefixany-
lineNumber快捷行号;未设置 prefix 时会作为前缀输出number | string-
code快捷文本内容,会自动包一层 code 标签any-
tone行级语义色,适合成功、告警、错误等状态'neutral' | 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error'-
highlight把当前行渲染成高亮底色;可与 tone 组合booleanfalse
codeClassName自动生成的 code 标签类名string-
children自定义整行内容;传入后优先级高于 codeany-

前缀优先级

item.prefix优先级最高
否则回退到根节点prefix
两者都没有时,lineNumbers会输出自动行号

FAQ

什么时候用 items,什么时候可以写原生 pre?

如果内容来自数组、日志流或代码生成,优先用items;如果你已经有现成的pre + data-prefix结构,继续透传即可,不需要额外改造。

highlight 和 tone 分别负责什么?

tone负责语义色,适合成功、错误、告警等输出;highlight负责行背景强调,两者叠加后更适合做 diff 或重点提示。

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