Stay organized with collections
Save and categorize content based on your preferences.
blockly > Field > doClassValidation_
Field.doClassValidation_() method
Validate the changes to a field's value before they are set. See **FieldDropdown** for an example of subclass implementation.
**NOTE:** Validation returns one option between T
, null
, and undefined
. **Field**'s implementation will never return undefined
, but it is valid for a subclass to return undefined
if the new value is compatible with T
.
Signature:
protected doClassValidation_(newValue: T): T | null | undefined;
Parameters
Parameter |
Type |
Description |
newValue |
T |
The value to be validated. |
Returns:
T | null | undefined
One of three instructions for setting the new value: T
, null
, or undefined
.
T
to set this function's returned value instead of newValue
.
null
to invoke doValueInvalid_
and not set a value.
undefined
to set newValue
as is.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-09-18 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-09-18 UTC."],[[["\u003cp\u003e\u003ccode\u003edoClassValidation_\u003c/code\u003e is a method used to validate changes to a field's value before it's set, allowing subclasses to implement custom validation logic.\u003c/p\u003e\n"],["\u003cp\u003eThe method can return \u003ccode\u003eT\u003c/code\u003e to set a modified value, \u003ccode\u003enull\u003c/code\u003e to reject the change and trigger an error, or \u003ccode\u003eundefined\u003c/code\u003e to accept the value as is.\u003c/p\u003e\n"],["\u003cp\u003eSubclasses like \u003ccode\u003eFieldDropdown\u003c/code\u003e can override this method to perform specific validation checks.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003edoClassValidation_\u003c/code\u003e receives the new value as input and returns instructions on how to proceed with setting the field's value based on the validation outcome.\u003c/p\u003e\n"]]],[],null,["[blockly](./blockly.md) \\\u003e [Field](./blockly.field_class.md) \\\u003e [doClassValidation_](./blockly.field_class.doclassvalidation__1_method.md)\n\nField.doClassValidation_() method\n---------------------------------\n\nValidate the changes to a field's value before they are set. See \\*\\*FieldDropdown\\*\\* for an example of subclass implementation.\n\n\\*\\*NOTE:\\*\\* Validation returns one option between `T`, `null`, and `undefined`. \\*\\*Field\\*\\*'s implementation will never return `undefined`, but it is valid for a subclass to return `undefined` if the new value is compatible with `T`.\n\n**Signature:** \n\n protected doClassValidation_(newValue: T): T | null | undefined;\n\nParameters\n----------\n\n| Parameter | Type | Description |\n|-----------|------|----------------------------|\n| newValue | T | The value to be validated. |\n\n**Returns:**\n\nT \\| null \\| undefined\n\nOne of three instructions for setting the new value: `T`, `null`, or `undefined`.\n\n- `T` to set this function's returned value instead of `newValue`.\n\n- `null` to invoke `doValueInvalid_` and not set a value.\n\n- `undefined` to set `newValue` as is."]]