适用于高级版及以上
基础概念
Teable 脚本功能让您可以通过 JavaScript 代码自动化处理数据,实现复杂的业务逻辑和数据操作。执行环境
- 语言: JavaScript (ES6+)
- 环境: 安全沙箱环境
- 模块系统: CommonJS (
require()
) - 支持: 顶级 await、现代 JavaScript 特性
获取输入数据
脚本通过input
对象获取前面工作流步骤的输出。每个前序步骤的输出以其 actionId 作为键名:
设置输出结果(推荐方式)
使用output.set()
是最佳方式,因为它能保留对象的完整格式:
依赖管理
如果使用外部 npm 包,必须在依赖配置中声明:HTTP 请求
使用内置的fetch()
函数:
调试技巧
1. 查看输入数据结构
2. 错误处理
快速上手步骤
- 先调试输入 - 使用
console.log(JSON.stringify(input, null, 2))
查看数据结构 - 提取需要的数据 - 通过
input[actionId].record.fields[fieldId]
获取字段值 - 处理数据 - 使用 JavaScript 进行计算、转换、过滤等操作
- 设置输出 - 用
output.set(key, value)
设置结果 - 测试验证 - 运行脚本检查输出是否符合预期
实际应用示例
基础数据处理
API 调用示例
Teable API 操作
注意事项
认证和安全
- 使用内置的
process.env.AUTOMATION_TOKEN
- 避免在脚本中硬编码敏感信息
- 确保脚本只访问必要的表格和字段
数据处理
- 建议开启
typecast: true
进行自动类型转换 - 处理前验证输入数据的完整性和格式
- 使用有意义的字段名
性能优化
- 优先使用批量操作而非循环单条操作
- 大量数据时使用分页查询
- 只获取需要的字段
错误处理
- 所有 API 调用都要用 try/catch 包装
- 记录详细的错误信息便于调试
- 实现优雅降级,部分失败时不影响整体流程