渲染器列表
Ovine 页面是通过 Json 配置出来的。这些配置都是由渲染器模型来解析的。灵活掌握这些渲染器配置能够快速写出各种各样的页面。
开始之前,请一定要先阅读 Amis 渲染器基本用法
#
Ovine 扩展渲染器列表以下是 Ovine 封装的一些渲染器,均在 Demo 项目中有使用到。扩展的渲染器都是 lib-xxx
前缀。建议应用内扩展可以使用 app-xxx
。当渲染器过多时,可以迅速去对应的地方找到文档。
- lib-css: 添加 Css 自定义样
- lib-crud: 封装了 Amis Crud 渲染器,更加紧凑,适合表格页面
- lib-dropdown: 下拉选择框
- lib-limit-setting: 权限控制面板
- lib-renderer: 扩展简单渲染器
- lib-when: 条件渲染
- lib-blank: 不渲染当前节点,但渲染子节点
- lib-omit: 不渲染当前节点及子节点
#
lib-css样式渲染器,可以方便的给组件添加样式,支持定义好的主题变量。建议在 JSON 最顶层使用一次该渲染器即可,无需在每个需要自定义样式的组件都写一次。查看样式写法
#
lib-dropdown极简的一个下拉列表,主要用于有鼠标悬浮展示下拉菜单场景的地方。
#
lib-limit-setting权限控制面板渲染器。主要是用于,将展示所有可供操作的权限,并将用户选择的权限提交给后端。
#
lib-renderer主要用于封装一些全局的简单渲染器,只需要参数,就就能转换为其他的 JSON 渲染器的场景。
#
lib-when条件渲染器,主要用于需要根据数据动态显示不同内容地方。
#
lib-blank直接渲染 schema.body, 用于渲染器存在 key 值冲突时,很少情况下会使用。
#
lib-omit动态处理 schema 时,过滤某个节点组件。这个用的很少,主要是 lib 中有使用到。
#
特定场景中使用的渲染器由于配置较多,也是 Ovine 项目都必要用的渲染器,因此具体使用请查看 Demo 代码。
#
页面配置中 entry 中可配置的渲染器preset-route
经过封装的路由
private-route
用于鉴权的路由
aside-layout
侧边栏布局 route 路由配置
amis-render
amis 渲染器,可使用任何 amis 的渲染器
aside-layout
中 header.items
可配置的渲染器#
head-item
普通的头部工具项
item-search-menu
搜索侧边栏按钮
item-setting
系统设置按钮
item-dev-code
显示配置代码按钮
#
Amis 内置渲染器列表此处可能更新不及时,可以前往 Amis 官方文档查看
- Tpl: 支持用 JS 模板引擎来组织输出
- Page: JSON 配置最外层的 Page 渲染器
- Action: 一种特殊的渲染器,它本身是一个按钮,同时它能触发事件
- Table: 表格展示
- Column: 表格中的列配置
- CRUD: 增删改查模型,主要用来展现列表
- Panel: 可以把相关信息以盒子的形式展示到一块。
- Form: 表单渲染器
- FormItem: Form 中主要是由各种 FormItem 组成
- List: 简单的列表选择框
- Button-Group: 按钮集合
- Service: 动态配置,配置项由接口决定
- Tabs: 多个输入框通过选项卡来分组
- Table: 可以用来展示数组类型的数据
- HBox: 支持 form 内部再用 HBox 布局
- Grid: 支持 form 内部再用 grid 布局
- Panel: 还是为了布局,可以把一部分 FormItem 合并到一个 panel 里面单独展示
- Hidden: 隐藏字段类型
- Text: 普通的文本输入框
- Textarea: 多行文本输入框
- Url: URL 输入框
- Email: Email 输入框
- Password: 密码输入框
- Number: 数字输入框
- Tag: 标签输入框
- Select: 选项表单
- Chained-Select: 无限级别下拉
- Checkbox: 勾选框
- Checkboxes: 复选框
- Radios: 单选框
- City: 城市选择
- Rating: 评分
- Switch: 可选框,和 checkbox 完全等价
- Date: 日期类型
- Datetime: 日期时间类型
- Time: 时间类型
- Date-Range: 日期范围类型
- Transfer: 穿梭器,用来勾选选项。
- TabsTransfer: 组合穿梭器,用来勾选选项。
- Color: 颜色选择器
- Range: 范围输入框
- Image: 图片输入
- File: 文件输入
- Matrix: 矩阵类型的输入框
- Tree: 树形结构输入框
- TreeSelect: 树形结构选择框
- NestedSelect: 树形结构选择框
- Button: 按钮, 包含 button、submit 和 reset
- Button: 让多个按钮在一起放置
- Combo: 组合模式
- Array: 数组输入框配置
- SubForm: formItem 还可以是子表单类型
- Picker: 列表选取
- Formula: 公式类型
- Group: 表单项集合
- FieldSet: 多个输入框可以通过 fieldSet 捆绑在一起
- Repeat: 可用来设置重复频率
- Rich: 富文本编辑器
- Editor: 编辑器
- Static: 纯用来展现数据的
- Wizard: 表单向导
- Each: 基于现有变量循环输出渲染器
- Plain: 单纯的文字输出
- Html: html, 当需要用到变量时,请用 Tpl 代替
- Dialog: Dialog 由 Action 触发。他是一个类似于 Page 的容器模型
- Drawer: Drawer 由 Action 触发
- Divider: 分割线
- Wrapper: 简单的一个容器。
- Service: 功能型容器,自身不负责展示内容,主要职责在于通过配置的 api 拉取数据
- Chart: 图表渲染器
- Collapse: 折叠器
- Carousel: 轮播图
- Alert: 提示框
- Audio: 音频播放器
- Video: 视频播放器
- List: 列表展示
- Card: 卡片的展示形式
- Cards: 卡片集合
- Field: 主要用在 Table 的列配置 Column、List 的内容、Card 卡片的内容和表单的 Static-XXX 中
- Tabs: 标签页
- Grid: Grid 布局
- HBox: HBox 布局
- iFrame: 如果需要内嵌外部站点,可用 iframe 来实现
- Nav: 菜单栏
- Tasks: 任务操作集合,类似于 orp 上线
- QRCode: 二维码显示组件
- Types: 类型说明文档