Пользовательские поля
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Хотя Blockly предоставляет множество полезных полей, ваше приложение может иметь особый случай. Вот несколько шагов, которые необходимо предпринять при настройке полей:
Прочтите документацию по любым полям, похожим на то, что вам нужно; они могут предоставить полезный интерфейс для настройки. Например, выпадающие списки имеют множество скрытых функций.
Рассмотрите возможность использования валидатора для решения вашей проблемы. Валидаторы позволяют принимать только определенные значения, изменять ввод или запускать функции при изменении значения поля.
Рассмотрите возможность расширения поля . Если есть поле, представляющее требуемый тип значения, но вы хотите изменить его редактор , его внешний вид или отображаемый текст , вы можете создать подкласс , который наследует основную часть функций, переопределяя при этом определенные части, которые вы хотите изменить.
Создайте новый тип поля . Хотя это самый мощный вариант, он также требует больше всего времени и, как правило, его следует использовать только в том случае, если вам нужно сохранить новый тип значения.
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-24 UTC.
[null,null,["Последнее обновление: 2025-07-24 UTC."],[[["\u003cp\u003eBlockly offers customization options beyond its built-in fields, allowing developers to tailor fields to their specific needs.\u003c/p\u003e\n"],["\u003cp\u003eBefore creating a new field type, explore existing fields, validators, and extension capabilities for potential solutions.\u003c/p\u003e\n"],["\u003cp\u003eLeverage validators to control accepted values, modify input, or trigger actions based on field value changes.\u003c/p\u003e\n"],["\u003cp\u003eExtend existing fields to modify their editor, appearance, or displayed text while inheriting core functionality.\u003c/p\u003e\n"],["\u003cp\u003eCreating a new field type is the most powerful but time-intensive option, reserved for storing new value types.\u003c/p\u003e\n"]]],["Customizing Blockly fields involves several steps: First, review documentation of similar fields for potential customization options. Second, use validators to control accepted values, modify input, or trigger actions upon value changes. Third, extend existing fields by creating subclasses to modify their editor, appearance, or displayed text. Finally, create a new field type for storing novel value types, though this is the most complex option.\n"],null,["# Custom fields\n\nWhile Blockly provides many useful fields, your application may have a\nspecialized case. Here are a few steps to take when customizing fields:\n\n1. Read the documentation of any fields similar to what you require; they may\n provide a useful interface for customization. For example,\n [dropdowns](/blockly/guides/create-custom-blocks/fields/built-in-fields/dropdown) have a lot of hidden functionality.\n\n2. Consider using a [validator](/blockly/guides/create-custom-blocks/fields/validators) to solve your problem.\n Validators allow you to only accept certain values, modify input, or trigger\n functionality when a field's value changes.\n\n3. Consider [extending a field](/blockly/guides/create-custom-blocks/fields/customizing-fields/extending).\n If there is a field that represents the value type you require, but you want to\n modify its [editor](/blockly/guides/create-custom-blocks/fields/anatomy-of-a-field#editor_display), its\n [appearance](/blockly/guides/create-custom-blocks/fields/anatomy-of-a-field#on-block_display), or the\n [text](/blockly/guides/create-custom-blocks/fields/customizing-fields/creating#text) it\n displays, you can [create a subclass](/blockly/guides/create-custom-blocks/fields/customizing-fields/extending#subclassing)\n that inherits the bulk of the functionality, while overriding the specific parts\n you want to change.\n\n4. [Create a new field type](/blockly/guides/create-custom-blocks/fields/customizing-fields/creating).\n While this is the most powerful option, it is also the most time consuming, and\n should generally only be used if you need to store a new value type."]]