# 顶层连接
块有三种可选的顶层连接:
nextStatementpreviousStatementoutput
# 语句连接
用户可以通过 nextStatement 和 previousStatement 把块纵向堆叠成语句序列。
在 Blockly 的默认布局中,这两个连接分别位于块底部和顶部。
带 previousStatement 的块不能再有 output。
通常把没有 output 的块称为语句块,语句块一般同时具有 previousStatement 和 nextStatement。
nextStatement 与 previousStatement 也支持类型约束,具体可见连接检查。
# 下一个连接
下一个连接会在块底部生成一个连接点,允许其它语句块接在下方。
如果一个块只有下一个连接、没有上一个连接,这类块通常表示事件入口,也可以配置为带起始帽,见应用设计页。

# JSON
未指定类型:
{
...,
"nextStatement": null,
}
指定类型(较少使用):
{
"nextStatement": "Action",
...
}
# JavaScript
未指定类型:
this.setNextStatement(true); // false 表示不设置下一个连接(默认)
指定类型(较少使用):
this.setNextStatement(true, 'Action');
# 上一个连接
上一个连接会在块顶部生成一个凹槽,使当前块可作为语句栈中的一环。
带上一个连接的块不能再有输出连接。

# JSON
未指定类型:
{
...,
"previousStatement": null,
}
指定类型(较少使用):
{
"previousStatement": "Action",
...
}
# JavaScript
未指定类型:
this.setPreviousStatement(true); // false 表示不设置上一个连接(默认)
指定类型(较少使用):
this.setPreviousStatement(true, 'Action');
# 输出连接
一个块可以有一个输出连接,通常位于前缘,形状类似拼图凸起。
输出连接用于接到值输入;带输出连接的块通常称为值块。

# JSON
未指定类型:
{
// ...,
"output": null,
}
指定类型:
{
// ...,
"output": "Number",
}
# JavaScript
未指定类型:
init: function() {
// ...
this.setOutput(true);
}
指定类型:
init: function() {
// ...
this.setOutput(true, 'Number');
}
带输出连接的块不能同时拥有上一个连接。
← 块的解剖 JSON 中的块结构 →