注射方案

注入

您可以通过调用 Blockly.inject(location, options) 注入 Blockly 工作区。第一个参数用于告知 Blockly 在 DOM 中将工作区注入到何处。第二个参数是用于配置的名称-值对字典。注入代码会将选项字典解析为 Blockly.Options 的实例。

直接创建

您还可以通过调用 Blockly.WorkspaceSvg(new Blockly.Options(options)) 直接创建工作区。请注意,您需要调用 new Blockly.Options(options),并传入选项字典 - 工作区构造函数预期的是 Blockly.Options 的实例,而不是纯选项字典。

选项字典

支持以下选项。请注意,其中一些选项的默认值会根据所提供的工具箱是否有类别而发生变化。

名称 类型 说明
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}
media 字符串 从网页(或框架)到 Blockly 媒体目录的路径。 默认值为 "https://blockly-demo.appspot.com/static/media/"
move object 配置用户在工作区中移动的行为。请参阅移动
oneBasedIndex 布尔值 如果 true 列表和字符串操作应从 1 开始编制索引,则设置为 true;如果 false0 开始编制索引,则设置为 false。默认值为 true
readOnly 布尔值 如果为 true,则禁止用户进行修改。隐藏工具箱和回收站。默认设置为 false
renderer 字符串 确定 blockly 使用的渲染程序。预打包的渲染程序包括“geras”(默认)、“thrasos”和“zelos”(类似于草稿的渲染程序)。
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
maxTrashcanContents 数值 回收站弹出式菜单中显示的已删除内容的数量上限。“0”表示停用该功能。默认值为“32”。
plugins object 将插件类型与已注册的插件或插件类的名称进行映射。请参阅注入子类
zoom 对象 配置缩放行为。请参阅缩放