输入可以内嵌呈现,也可以外部呈现。此属性用于控制值输入的连接器是在块内(内嵌)还是在块外边缘(外部)呈现,以及输入是在同一行还是不同行中呈现。
块定义可以指定一个可选的布尔值,用于控制输入是否内嵌。
JSON
{
// ...,
"inputsInline": true
}
JavaScript
init: function() {
// ...
this.setInputsInline(true);
}
当此布尔值设置为 true
(内嵌输入源)时:
- 值输入的连接器在块内呈现。
- 陈述输入内容会单独显示在一行中。
- 虚拟输入、行尾输入和值输入都呈现在同一行中,但语句或行尾输入之后的任何输入都会呈现在新行中。
当设置为 false
(外部输入源)时:
- 值输入的连接器呈现在代码块的外边缘。
- 所有输入都显示在各自的行中,但紧跟在虚拟输入后面的行尾输入会显示在与虚拟输入相同的行中。
如果您难以直观地理解这一点,可以在 Blockly 开发者工具中构建块,并为 inputs
下拉菜单选择不同的设置(automatic
、external
、inline
)。
如果未定义此布尔值,Blockly 将使用一些启发式方法来猜测哪种模式最适合。假设 Blockly 做出了正确的选择,最好将此字段保留为未定义状态,因为不同的语言翻译可以自动采用不同的模式。请参阅插值令牌顺序中 "set %1 to %2"
(外部输入)和 "put %2 in %1"
(内嵌输入)的示例。
当某个块可能包含数字等小输入时,请使用内嵌输入。 用户可以通过上下文菜单切换此选项。