屏蔽课程
用于一个块的类。通常不会直接调用 workspace.newBlock()。
Signature:
export declare class Block implements IASTNodeLocation
构造函数
构造函数 | 修饰符 | 说明 |
---|---|---|
(构造函数)(workspace, protoName, opt_id) | 构造 Block 类的新实例 |
属性
属性 | 修饰符 | 类型 | 说明 |
---|---|---|---|
childBlocks_ | protected |
此 [] | |
collapsed_ | protected |
boolean | |
COLLAPSED_FIELD_NAME |
|
string | 为收起的字段提供的中性语言 ID。 |
COLLAPSED_INPUT_NAME |
|
string | 为收起的输入内容指定的语言中性 ID。 |
colour_ | protected |
string | 块的颜色,采用“#RRGGBB”格式。 |
compose? | (p1:块) => 无效 | (可选)可选函数,用于根据赋值函数对话框的内容重新配置代码块。 | |
contextMenu | boolean | ||
数据 | 字符串 | null | 在块和 XML 之间往返的可选文本数据。没有任何影响。第三方可能会使用其作为元信息。 | |
是否分解? | (p1:工作区) => 屏蔽 | (可选)可选函数,会使用此块的组件填充赋值器的对话框。 | |
destroy? | () => 无效 | (可选)在处理过程中调用的可选方法。 | |
处置 | protected |
boolean | 当前块是否正在处理中? |
domToMutation? | (p1:元素)=> 无效 | (可选)可选的反序列化方法,用于定义如何从 XML 对变更状态进行反序列化。它必须与定义 mutationToDom 结合在一起。 |
|
getDeveloperVariables? | () => 字符串 [] | (可选)用于声明开发者变量的可选属性。返回供生成器使用的变量名称列表。开发者变量绝不会向用户显示,但会在生成的代码中声明为全局变量。 | |
帽子? | string | (可选)帽子类型的名称。 | |
helpUrl | string | Function | null | 代码块帮助字符串,或返回网址的函数。Null 表示无帮助。 | |
图标 | IIcon[] | ||
ID [id] | string | ||
init? | () => 无效 | (可选)在初始化期间调用的可选方法。 | |
inputList | 输入[] | ||
inputsInline? | boolean | (可选) | |
inputsInlineDefault? | boolean | (可选) | |
isInFlyout | boolean | ||
isInMutator | boolean | ||
isInsertionMarker_ | protected |
boolean | 如果此块是插入标记,则为 true。 |
loadExtraState? | (p1:任何)=> 无效 | (可选)可选的序列化方法,用于定义如何从兼容的 JSON 文件反序列化块的额外状态(例如变更状态)。它必须与定义 saveExtraState 结合在一起。 |
|
mutateToDom? | (...p1: any[]) => 元素 | (可选)可选的序列化方法,用于定义如何将变更状态序列化为 XML。它必须与定义 domToMutation 结合在一起。 |
|
nextConnection | 连接 | null | ||
变化? | ((p1: Abstract) => void) | null | (可选)在块的父工作区发生更改时使用的可选回调方法。通常只能通过构造函数、块类型初始化程序函数或扩展初始化程序函数进行调用。 | |
outputConnection | 连接 | null | ||
outputShape_ | protected |
数字 | null | |
parentBlock_ | protected |
此 | null | |
previousConnection | 连接 | null | ||
已呈现 | readonly |
boolean | 此块是 BlockSVG 吗? |
RTL | boolean | ||
saveExtraState? | (doFullSerialization?: 布尔值) => 任意 | (可选)可选的序列化方法,用于定义如何将块的额外状态(例如变更状态)序列化为 JSON 兼容的对象。它必须与定义 loadExtraState 结合在一起。 |
|
styleName_ | protected |
string | 方块样式的名称。 |
suppressPrefixSuffix | boolean | null | 一个可选属性,用于禁止向生成的代码添加 STATEMENT_PREFIX 和 STATEMENT_SUFFIX。 | |
提示 | Tooltip.TipInfo | ||
type | string | ||
工作区 | Google Workspace |
方法
方法 | 修饰符 | 说明 |
---|---|---|
addIcon(icon) | 向砌块添加给定图标。 | |
allInputsFilled(opt_shadowBlocksAreFilled) | 以递归方式检查所有语句和值输入是否都填充了块。还会检查此堆栈中的所有以下语句块。 | |
appendDummyInput(name) | 附加一个虚拟输入行。 | |
appendEndRowInput(name) | 附加结束行的输入。 | |
appendInput(input) | 附加指定的输入行。 允许将自定义输入附加到代码块。 |
|
appendStatementInput(name) | 附加语句输入行。 | |
appendValueInput(name) | 附加一个值输入行。 | |
bumpNeighbours() | 触碰未连接的块,使其不对齐。两个实际未连接的方块在屏幕上不应恰好对齐。 | |
dispose(healStack) | 处理这个块。 | |
disposeInternal() | protected |
丢弃此块,而不执行顶部块所需的操作。例如,不触发事件、拔下代码块等。 |
doInit_() | protected |
调用 init() 函数,并处理关联的事件触发等。 |
getChildren(ordered) | 查找直接嵌套在此代码块中的所有代码块。包括价值和语句输入,以及任何后续语句。不包括输出标签页或任何前面的语句中的任何连接。块可以选择按位置从上到下排序。 | |
getColour() | 获取砌块的颜色。 | |
getCommentText() | 返回此块的注释(如果没有注释,则返回 null)。 | |
getDescendants(ordered) | 查找直接或间接嵌套在此代码块内部的所有代码块。在列表中包含此屏蔽设置。包括价值和语句输入,以及以下任何语句。不包括“输出”标签页或任何前面的语句中的任何连接。块可以选择按位置从上到下排序。 | |
getDisabledReasons() | 获取该屏蔽当前已被停用的一系列原因(如果有)。如果屏蔽已启用,则此集合将为空。 | |
getField(name) | 返回块中的已命名字段。 | |
getFieldValue(name) | 返回指定字段的语言中性值。 | |
getHue() | 获取块的 HSV 色调值。如果未设置色调,则为 null。 | |
getIcon(type) | ||
getIcons() | ||
getInheritedDisabled() | 获取屏蔽设置是因父级停用还是停用。系统不会考虑该块本身的已停用属性。 | |
getInput(name) | 获取已命名的输入对象。 | |
getInputsInline() | 获取值输入是水平排列还是垂直排列。 | |
getInputTargetBlock(name) | 获取附加到指定输入的块。 | |
getInputWithBlock(block) | 返回连接到指定块的输入。 | |
getNextBlock() | 返回直接连接到此代码块的下一个语句代码块。 | |
getOutputShape() | 获取块的输出形状。 | |
getParent() | 返回父代码块,如果此代码块位于顶级,则返回 null。父块是连接到上一个连接的块(对于语句块)或连接到输出连接的块(对于值块)。 | |
getPreviousBlock() | 返回连接到上一个连接的块。 | |
getRelativeToSurfaceXY() | 返回相应图块左上角相对于绘图表面原点 (0,0) 的坐标,以工作区单位为单位。 | |
getRootBlock() | 返回此代码块树中最顶层的代码块。如果此代码块位于顶级,它将自行返回。 | |
getStyleName() | 获取块样式的名称。 | |
getSurroundParent() | Return the parent block that surrounds the current block, or null if this block has no surrounding block. 父代码块可能只是前面的语句,而周围的代码块却是 if 语句、while 循环等。 | |
getTooltip() | 返回此块的提示文本。 | |
getVars() | 返回此代码块引用的所有变量。 | |
hasDisabledReason(reason) | 获取屏蔽当前是否因提供的原因而被停用。 | |
hasIcon(type) | ||
initModel() | 对块上的所有字段调用 initModel。可以多次调用。必须在创建块之后、首次与之交互之前调用 initModel 或 initSvg。交互包括界面操作(例如点击和拖动)和触发事件(例如创建、删除和更改)。 | |
isCollapsed() | 获取相应砌块是否收起。 | |
isDeletable() | 获取此块是否可删除。 | |
isDisposed() | 返回此块是否已处置 / 删除。 | |
isDuplicatable() | 获取块是否可复制。如果复制此块及其后代会使此块超出工作区的容量,则此块是不可复制的。如果复制此块及其后代会将任何类型置于其 maxInstance 上,则此块是不可复制的。 | |
isEnabled() | 获取此屏蔽设置是否已启用。如果没有任何原因导致某个屏蔽设置被停用,系统便会将其视为已启用。即使用户尝试手动启用某个屏蔽设置,该功能仍然可能由于其他原因而遭到停用(例如该屏蔽设置位于无效位置时)。 | |
isInsertionMarker() | 获取此块是否为插入标记块。 | |
isOwnDeletable() | 返回此块自己的可删除属性是 true 还是 false。 | |
isOwnEditable() | 返回此块自己的可修改属性是 true 还是 false。 | |
isShadow() | 获取此块是否为影子块。 | |
jsonInit(json) | 使用支持国际化的跨平台 JSON 说明初始化此块。 | |
mixin(mixinObj, opt_disableCheck) | 将 mixinObj 中的键值对添加到此块对象。默认情况下,此方法将检查 mixinObj 中的键是否不会覆盖块中的现有值,包括原型值。这为 Mixin / Extension 与未来屏蔽功能不兼容提供了一定程度的保险。通过传递 true 作为第二个参数,可以停用此检查。 | |
moveBy(dx, dy, reason) | 按相对偏移量移动块。 | |
moveInputBefore(name, refName) | 将已命名的输入内容移至此块上的其他位置。 | |
moveNumberedInputBefore(inputIndex, refIndex) | 将带编号的输入内容移至此方块上的其他位置。 | |
removeIcon(type) | 从块中删除 getType 与指定类型 iconType 匹配的图标。 | |
removeInput(name, opt_quiet) | 从此代码块中移除输入。 | |
renameVarById(oldId, newId) | 表示变量正在重命名的通知。如果 ID 与此块的其中一个变量匹配,则重命名。 | |
setCollapsed(collapsed) | 设置该屏蔽设置是否收起。 | |
setColour(colour) | 更改块的颜色。 | |
setCommentText(text) | 设置此块的备注文本。 | |
setDeletable(deletable) | 设置此块是否可删除。 | |
setDisabledReason(disabled, reason) | 添加或移除相关屏蔽设置可能被停用的原因。如果某个屏蔽设置因任何原因被停用,则该屏蔽设置本身将被视为已停用。一个屏蔽设置可能会由于多个独立的原因同时被停用,例如当用户手动停用它或该屏蔽设置无效时。 | |
setEditable(editable) | 设置此组成要素是否可修改。 | |
setEnabled(enabled) | ||
setFieldValue(newValue, name) | 设置此块的指定字段的值。 | |
setHelpUrl(url) | 设置此块的帮助页面的网址。 | |
setInputsInline(newBoolean) | 设置值输入是水平排列还是垂直排列。 | |
setMovable(movable) | 设置此砌块是否可移动。 | |
setMutator(_mutator) | 为该代码块提供一个赋值函数对话框。 | |
setNextStatement(newBoolean, opt_check) | 设置是否可以将另一个代码块链接到此代码块底部。 | |
setOnChange(onchangeFn) | 设置要在代码块的父工作区发生更改时使用的回调函数,以替换之前的所有 onchange 处理程序。通常只能通过构造函数、块类型初始化程序函数或扩展初始化程序函数进行调用。 | |
setOutput(newBoolean, opt_check) | 设置此代码块是否返回一个值。 | |
setOutputShape(outputShape) | 设置块的输出形状。 | |
setPreviousStatement(newBoolean, opt_check) | 设置此代码块是否可以链接至另一个代码块的底部。 | |
setStyle(blockStyleName) | 设置块的样式和颜色值。 | |
setTooltip(newTip) | 设置此块的提示。 | |
setWarningText(_text, _opt_id) | 设置此块的警告文字。 | |
toDevString() | 此方法返回以开发者术语(类型名称和 ID;仅限英语)描述该块的字符串。 适用于控制台日志和错误。如果您需要使用用户母语的字符串(包括块文本、字段值和子块),请使用 [toString()]。 |
|
toString(opt_maxLength, opt_emptyToken) | 创建此块及其子项的人类可读文本表示形式。 | |
unplug(opt_healStack) | 将这个木块从上层木块上拔下。如果此代码块是一个语句,可以选择将下面的代码块与顶部的代码块重新连接。 |