创建工作区

您可以通过一次调用来创建工作区并将其注入 DOM,也可以只创建工作区。

注射

您可以创建一个 Blockly 工作区,并通过调用 Blockly.inject(location, options) 将其注入到 DOM 中。第一个实参用于告知 Blockly 在 DOM 中将工作区注入到何处。第二个实参是一个包含配置选项的对象。

如需了解详情,请参阅创建工作区

直接创建

您可以通过直接调用 new Blockly.WorkspaceSvg(new Blockly.Options(options)) 来创建工作区。进行此调用时,请务必在对 new Blockly.Options(options) 的调用中传递配置选项,因为 WorkspaceSvg 构造函数无法直接接受配置选项对象。

配置选项

配置对象实现了 Blockly.BlocklyOptions,并具有以下选项。请注意,其中一些选项会根据所提供的工具箱是否包含类别来更改其默认值。

名称 类型 说明
collapse 布尔值 块上下文菜单是否包含用于收起或展开块的项。如果工具箱包含类别,则默认为 true,否则为 false
comments 布尔值 块上下文菜单是否包含用于添加或移除注释的项。如果工具箱包含类别,则默认为 true,否则为 false
css 布尔值 如果为 false,则不注入 CSS(提供 CSS 成为文档的责任)。默认为 true
disable 布尔值 屏蔽上下文菜单是否包含用于停用或启用屏蔽的项。如果工具箱包含类别,则默认为 true,否则为 false
grid 对象 配置块可贴靠到的网格。请参阅网格
horizontalLayout 布尔值 如果 true 工具箱是水平的,则为 false 工具箱是垂直的。默认值为 false
maxBlocks 数值 可创建的块数量上限。适用于学生练习。默认为 Infinity
maxInstances object 从块类型到可创建的相应类型的最大块数的映射。未声明的类型默认为 Infinity。示例:maxInstances: {'controls_if': 3, 'math_number': 42}
maxTrashcanContents number 回收站弹出式窗口中显示的最大已删除项目数。'0' 会停用此功能。默认值为 '32'
media 字符串 从网页(或框架)到 Blockly 媒体目录的路径。 默认值为 'https://blockly-demo.appspot.com/static/media/'。请参阅媒体文件夹
modalInputs 布尔值 如果为 true,则在移动设备上为文本输入字段及其子类显示模态编辑器,在桌面设备上显示内嵌编辑器。如果值为 false,则在桌面设备和移动设备上都显示内嵌编辑器。默认值为 true
move object 配置用户在工作区中的移动方式。请参阅移动
oneBasedIndex 布尔值 如果 true 列表和字符串操作应从 1 开始编制索引,如果 false0 开始编制索引。默认值为 true
plugins 对象 一个对象,用于将注册的替换类名称映射到替换类或替换类的注册名称。请参阅注入替换类
readOnly 布尔值 如果为 true,则禁止用户进行编辑。禁止显示工具箱和回收站。默认值为 false。另请参阅 setIsReadOnlyisReadOnly
renderer 字符串 确定 Blockly 使用的渲染器。预打包的渲染器包括 'geras'(默认)、'thrasos''zelos'(类似 Scratch 的渲染器)。如需了解自定义渲染器,请参阅创建自定义渲染器
rtl 布尔值 如果值为 true,则镜像编辑器(对于阿拉伯语或希伯来语语言区域)。请参阅 RTL 演示。默认值为 false
scrollbars 对象或布尔值 设置工作区是否具有垂直或水平滚动条。接受一个对象,其中 horizontal 属性用于确定是否启用水平滚动,vertical 属性用于确定是否启用垂直滚动。如果传递的是布尔值,则相当于传递一个对象,其中 horizontalvertical 属性均设置为该值。如果工具箱包含类别,则默认为 true
sounds 布尔值 如果为 false,则停用声音。默认设置为 true
theme 主题 如果未提供主题,则默认为经典主题。 请参阅主题
toolbox 字符串、XML 或 JSON 用户可用的类别和块的树状结构。如需了解详情,请参阅定义工具箱
toolboxPosition 字符串 如果 'start' 工具箱位于顶部(如果是横向)或左侧(如果是纵向且 LTR)或右侧(如果是纵向且 RTL)。如果 'end' 工具箱位于另一侧。默认值为 'start'
trashcan 布尔值 显示或隐藏回收站。如果工具箱包含类别,则默认为 true;否则默认为 false
zoom 对象 配置缩放行为。请参阅缩放