Allow standalone field components without forms #14999
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR allows using field components without forms. That means they do not need to be wrapped in a
Form
component (but still can be, of course) and provide a global binding of their value to use as you like.Almost all field types support this usage. The only exceptions are attachments (both single and multiple), signatures and relationship pickers, as these require being bound to a datasource to be functional.
Clarification:
field
setting is now optional when using fields standalone. The component name rather than the field setting will be used to generate the global bindingQuick example of filtering using a standalone field
Here's a screen with a table, and I've dropped an options picker above it:
Here's my component tree - just the table and some fields without a form:
I can filter my table using the new global bindings:
The field configuration can be left completely blank (I've added a placeholder but that's optional of course):
Quick example of saving rows
You also don't need a form to create rows when using fields like this. You can simply add a button, leave datasource to "None" and bind up the values:
Launchcontrol
Allow using fields without forms.