核心功能
SmartTable 围绕「数据管理 + 视图呈现 + 流程自动化 + 团队协作 + 插件扩展」五个维度提供了一整套功能,满足从小型项目管理到复杂业务系统的需求。
多维表格管理
一个 Base(多维表格) 是 SmartTable 的数据管理单元,相当于一个独立的工作空间:
- 创建、编辑、删除和收藏 Base。
- 每个 Base 可包含多张数据表、仪表盘、文档和工作流。
- 支持 Base 级别的成员管理、分享设置和权限控制。
数据表管理
在单个 Base 内,您可以:
- 创建多张数据表,并通过拖拽调整顺序。
- 对数据表进行重命名、复制和删除。
- 通过数据导入直接创建新表(支持 Excel、CSV、JSON 和多 Sheet)。
字段管理
SmartTable 支持 27 种字段类型,并为每种字段提供独立的配置选项:
| 类别 | 包含字段 |
|---|---|
| 文本类型 | 单行文本、多行文本、富文本 |
| 数值类型 | 数字(支持数字/货币/百分比格式化) |
| 日期类型 | 日期、日期时间 |
| 选择类型 | 单选、多选、复选框 |
| 人员类型 | 成员 |
| 联系方式 | 电话、邮箱、链接(URL) |
| 媒体类型 | 附件 |
| 计算类型 | 公式(47 个内置函数) |
| 关联类型 | 关联(Link) |
| 查找类型 | 查找(Lookup,支持聚合计算) |
| 系统类型 | 创建人、创建时间、更新人、更新时间、自动编号 |
| 地理位置 | 地理位置(省/市/区、国家和地区、经纬度、地图选点,支持多语言) |
| 其他 | 评分、进度 |
字段支持配置默认值、验证规则、显示隐藏和排序,满足个性化的数据录入需求。
视图管理
同一套数据可以通过 7 种视图类型 呈现:
| 视图类型 | 功能描述 |
|---|---|
| 表格视图 | 经典表格展示,支持虚拟滚动、列冻结和字段筛选。 |
| 分组视图 | 按字段分组展示,支持多级分组统计和筛选。 |
| 看板视图 | 卡片式展示,支持拖拽排序和分组。 |
| 日历视图 | 按日期分组显示,支持月/周/日切换。 |
| 甘特图视图 | 项目进度时间线,支持任务依赖和拖拽调整。 |
| 表单视图 | 数据收集表单,支持公开分享和自定义配置。 |
| 画廊视图 | 图片卡片网格展示,适合媒体内容。 |
每种视图都有独立的筛选、排序、分组和字段显示配置,互不干扰。
数据处理
- 筛选:多条件组合筛选,支持 AND/OR 逻辑和 20+ 种操作符。
- 排序:多字段排序,支持升序/降序,可拖拽调整优先级。
- 分组:按字段分组展示,最多支持 3 级分组,并支持分组统计。
- 公式引擎:47 个内置函数,覆盖数学、文本、日期、逻辑和统计计算。
- 流式加载:万级数据首屏秒级渲染,异步加载剩余页,保证操作流畅。
- 导入导出:支持 Excel、CSV、JSON 格式,导入时可创建新表,导出时可自定义字段。
工作流自动化
通过可视化工作流设计器,您可以将重复性业务逻辑自动化:
- 触发器:指定时间触发、记录创建触发、记录更新触发。
- 节点:创建记录、更新记录、Webhook、条件分支,支持拖拽调整节点顺序。
- 版本管理:保存工作流版本快照,支持历史回溯。
详情可参考工作流自动化。
插件体系(可扩展能力)
SmartTable 提供插件机制,把表格能力延伸到系统之外,同时保持清晰的安全边界:
- 双形态插件
- UI 插件:在 iframe 沙箱中运行(
sandbox="allow-scripts",opaque origin,无法访问宿主 Cookie / localStorage / DOM),宿主注入 Vue 3 运行时,可用标准 Vue 模板语法(v-model、v-for、@click、数据响应式)开发,零构建单文件即可分发。 - 脚本插件:在受限子进程中运行(模块白名单 + 危险内建禁用),数据操作按触发者身份由宿主代理执行并鉴权。
- UI 插件:在 iframe 沙箱中运行(
- 生命周期管理:上传安装、全局启停、Base 级安装/启停/移除、升级、回滚历史版本、卸载——全部由管理员在插件管理页完成;Base 页面不提供安装入口,打开即用。
- 两级配置:
global与base作用域配置(base 深合并 global),写入时按插件声明的configSchema校验。 - 双层权限:插件 manifest 权限声明 + 用户 RBAC,deny by default,宿主逐方法鉴权。
- 勾选数据通道:表格勾选记录以「打开时快照」方式传入插件(仅记录 ID,上限 1000,含全选/截断标记);扩展点可声明
requiresSelection/maxSelection,不满足时宿主禁用入口并提示。 - 安全与稳定:短时签名 URL 加载沙箱、zip 路径穿越与 zip bomb 防护、脚本超时与并发限制、连续失败自动置 error。
- 运行日志:记录状态、耗时、输出、结果与异常堆栈,支持按 Base 查询、结果弹窗与日志详情。
协作与分享
SmartTable 提供完整的协作能力:
- Base 分享:支持链接分享和权限控制。
- 表单分享:表单视图可公开分享,用于数据收集。
- 仪表盘分享:仪表盘可公开分享,支持实时数据展示。
- 成员管理:Base 级别成员列表、添加成员和角色分配。
- 实时协作:基于 WebSocket 的多人实时协作,包含在线状态、视图同步、单元格锁定、冲突检测和离线队列。
更多内容请参阅协作功能。
权限与安全
- 角色权限:基于 RBAC 的访问控制,包含所有者、管理员、编辑者、评论者和查看者五种角色。
- 用户认证:JWT Token 认证,支持刷新 Token、邮箱验证和密码重置。
- 安全特性:XSS 防护、CSRF 保护、安全响应头、API 速率限制、文件上传安全验证和敏感信息日志脱敏。
- 操作日志:完整的操作审计日志。
用户体验
- 表格、字段、视图、看板卡片均支持拖拽排序。
- 支持收藏常用表格和仪表盘。
- 提供全局搜索,快速定位表格名称和记录内容。
- 常用操作支持键盘快捷键。
其他系统能力
| 能力 | 说明 |
|---|---|
| 仪表盘系统 | 数字卡片、KPI 卡片、时钟、跑马灯、实时图表等组件,支持网格布局和模板复用。 |
| 文档管理 | 基于 Quill 的富文本编辑和 Markdown 编写,支持 PDF 导出和版本历史。 |
| 邮件系统(可选) | 自定义 SMTP 服务器、邮件模板、异步发送队列和发送日志。 |
| Webhook 投递(可选) | Webhook 配置、重试策略、测试功能和投递记录查看。 |
| 插件体系 | UI 插件(iframe 沙箱 + Vue 模板)与脚本插件(受限子进程),支持安装启停、两级配置、勾选数据传入、运行日志与版本回滚。 |
