blockly > FieldDropdown

FieldDropdown 类

可修改下拉菜单字段的类。

Signature:

export declare class FieldDropdown extends Field<string> 

扩展字段<字符串>

构造函数

构造函数 修饰符 说明
(constructor)(menuGenerator, validator, config) 构造 FieldDropdown 类的新实例
(constructor)(menuGenerator) 构造 FieldDropdown 类的新实例

属性

属性 修饰符 类型 说明
ARROW_CHAR static 字符串
clickTarget_ SVGElement | null
IMAGE_Y_OFFSET

protected

static

数值 字段顶部到图片顶部的 y 轴偏移量(如果选择了图片)。
IMAGE_Y_PADDING

protected

static

数值 图片上方和下方的总垂直内边距。
menu_ protected 菜单 | null 下拉菜单。
menuGenerator_? protected MenuGenerator (可选)
分隔符

static

readonly

(not declared) 用于表示下拉菜单项列表中的分隔符的魔法常量。
SERIALIZABLE 布尔值 序列化字段会由序列化程序保存,非序列化字段则不会。可修改的字段也应可序列化。

方法

方法 修饰符 说明
applyColour() 更新下拉箭头,使其与块的颜色/样式相匹配。
createSVGArrow_() protected 创建基于 SVG 的箭头。
createTextArrow_() protected 创建基于 tspan 的箭头。
doClassValidation_(newValue) protected 确保输入值是无语言偏好的有效选项。
doClassValidation_(newValue) protected
doValueUpdate_(newValue) protected 更新此下拉菜单字段的值。
dropdownDispose_() protected 处置属于下拉菜单编辑器的事件和 DOM 引用。
getOptions(useCache) 返回此下拉菜单的选项列表。
getText_() protected

使用 getText_ 开发者钩子替换字段的文本表示法。获取所选选项文本。如果所选选项是图片,我们会返回图片的替代文本。如果所选选项是 HTMLElement,则返回该元素的 title、ariaLabel 或 innerText。

如果您在 Node.js 中使用 HTMLElement 选项并调用此函数,请确保您提供的是 HTMLElement 的实现,例如通过 jsdom-global。

initView() 为此下拉菜单创建块界面。
isOptionListDynamic()
onItemSelected_(menu, menuItem) protected 处理下拉菜单中项的选择。
render_() protected 绘制宽度正确的边框。
setOptions(menuGenerator) 更新此下拉菜单中的选项。这会将所选项重置为列表中的第一项。
shouldAddBorderRect_() protected 下拉菜单是否应添加边框矩形。
showEditor_(e) protected 在文本下方创建一个下拉菜单。
trimOptions(options) protected 从静态定义的选项中提取常用字词。创建前缀和/或后缀标签。
validateOptions(options) protected 验证要作为选项列表处理的数据结构。