| 数据存在哪里 | 特点 | 读取方式 |
|---|---|---|
| Storage (左侧栏) | 永久保存,跨工作流 | $$变量名 |
| Global Data (工作流顶部) | 临时,当前工作流 | {{变量名}} 或 globalData@变量名 |
| Block 之间传递 | 上一步的输出 | {{prevBlock@数据名}} |
| Loop 循环 | 循环中的当前项 | {{loopData@数据名}} |
一、Storage 变量(永久存储)
定义位置: 左侧栏 → Storage → Variables
特点: 浏览器关闭后还在,所有工作流都能读
使用场景
| 场景 | 语法 |
|---|---|
| 在 Block 的输入框里(如 URL、选择器) | $$变量名 |
| 在 Insert Data 的 Value 里 | {{variables@$$变量名}} |
| 在 JavaScript 里读取 | automaRefData('variables', '$$变量名') |
示例
// 1. 在"新建标签页"Block 的 URL 输入框:
https://example.com/search?q=$$keyword
// 2. 在 Insert Data Block 的 Value:
// 3. 在 JavaScript Block:
let count = automaRefData('variables', '$$counter');
二、Global Data(当前工作流临时数据)
定义位置: 打开工作流 → 顶部 "Global Data" 标签 → Add Variable
特点: 只在这个工作流里用,运行结束就消失
使用场景
| 场景 | 语法 |
|---|---|
| 在 Block 的输入框里 | {{变量名}} 或 globalData@变量名 |
| 在 JavaScript 里读取 | automaRefData('globalData', '变量名') |
示例
// 1. 在"新建标签页"Block:
{{apiUrl}}/users
// 2. 在 JavaScript Block:
let url = automaRefData('globalData', 'apiUrl');
三、Block 之间的数据传递(上一步的输出)
特点: 上一个 Block 的输出,传给下一个 Block 用
使用场景
| 场景 | 语法 |
|---|---|
| 获取上一个 Block 的全部输出 | {{prevBlock}} |
| 获取上一个 Block 的某个字段 | {{prevBlock@字段名}} |
四、Loop Data(循环数据)
使用 Block: Loop Data / Loop Elements / Loop Through Numbers
特点: 循环中的当前项
使用场景
| 场景 | 语法 |
|---|---|
| 获取当前循环项 | {{loopData}} |
| 获取当前循环项的某个属性 | {{loopData@属性名}} |
示例
// Loop Data Block 循环一个数组:[{name: "A"}, {name: "B"}]
// 在循环体内的 Block:
当前名称:{{loopData@name}}
五、快速对照表
| 你想做什么 | 用什么 | 示例 |
|---|---|---|
| 读取永久保存的配置(跨工作流) | $$变量名 |
$$token |
| 读取当前工作流的配置 | {{变量名}} |
{{baseUrl}} |
| 读取上一步的结果 | {{prevBlock@字段}} |
{{prevBlock@price}} |
| 读取循环中的当前项 | {{loopData@字段}} |
{{loopData@url}} |
| 在 JS 里读永久变量 | automaRefData('variables', '$$name') |
- |
| 在 JS 里读临时变量 | automaRefData('globalData', 'name') |
- |
六、常见错误
| 错误写法 | 问题 | 正确写法 |
|---|---|---|
automaRefData('variables', 'name') |
读的是临时变量,不是 Storage | automaRefData('variables', '$$name') |
{{$$name}} |
语法错误 | $$name 或 {{variables@$$name}} |
globalData@$$name |
混淆了 Global 和 Storage | 直接用 $$name |
七、记忆口诀
$$ = 硬盘(Storage,永久)
{{}} = 内存(临时数据,包括 Global、prevBlock、loopData)
automaRefData = JS 里专用的读取函数,第一个参数是类型,第二个是名字
最简单的判断方法:
数据要不要永久保存?要 → 用 $$
数据是不是上一步产生的?是 → 用 {{prevBlock@...}}
数据是不是在循环里?是 → 用 {{loopData@...}}
其他临时配置 → 用 {{}} 或 globalData@
浙公网安备 33010602011771号