A view consists of components, which are rendered in Slack as blocks. Define components using the ViewDefinition metadata. There are several types of components.

Input Blocks are the only way to add visual labels for input fields. We recommend that you wrap every input field in an input block. Currently, every input must appear on its own line with its label directly above it.

Use text-only labels for each input field as emojis add extra noise for screen reader users.

For Select fields, use descriptive placeholder text. Instead of "Select an option", we recommend you use clear placeholder text that conveys the field's purpose, like "Select a status". On-screen readers, the placeholder overrides the label for select fields. If you don't include a placeholder, the screen reader announces "Pick an option".