Prefix & Suffix
Префикс и суффикс это дополнительные слоты контента с обеих сторон полей ввода и некоторых других визуальных компонентов. Такие слоты могут содержать визуальные индикаторы, такие как значки или единицы измерения, или интерактивные элементы для улучшения функциональности компонента.
Визуальная Индикация
Используйте префикс и суффикс чтобы добавить визуальные индикаторы для значений, которые ожидает компонент. Например, значок поиска в качестве префикса или "lbs" в качестве суффикса помогает пользователям быстро понять ожидаемый формат ввода.
 
Вы можете добавить такие элементы декларативно в виде вложенных XML-элементов:
<textField placeholder="Find a product...">
    <prefix>
        <icon icon="SEARCH"/>
    </prefix>
</textField>
<textField placeholder="Enter amount">
    <suffix>
        <span text="lbs"/>
    </suffix>
</textField>| Чтобы добавить префикс или суффикс к компоненту в Jmix Studio, выберите компонент и нажмите кнопку Add в панели инспектора Jmix UI. | 
Взаимодействие с Пользователем
Содержимое внутри префикса и суффикса также может реагировать на действия пользователя. Следующий пример улучшает компонент tabSheet путем добавления суффикса в котором содержится кнопка для создания новых вкладок:
 
<tabSheet id="tabSheet">
    <tab id="tab1" label="Tab 1">
        <div/>
    </tab>
    <tab id="tab2" label="Tab 2">
        <div/>
    </tab>
    <tab id="tab3" label="Tab 3">
        <div/>
    </tab>
</tabSheet>@ViewComponent
private JmixTabSheet tabSheet;
@Autowired
private UiComponents uiComponents;
@Subscribe
public void onInit(final InitEvent event) {
    tabSheet.setSuffixComponent(createAddTabButton()); (1)
}
protected Component createAddTabButton() {
    JmixButton button = uiComponents.create(JmixButton.class);
    button.setIcon(VaadinIcon.PLUS.create());
    button.addThemeVariants(ButtonVariant.LUMO_ICON, ButtonVariant.LUMO_TERTIARY_INLINE);
    button.addClickListener(event -> {
        int newTabIndex = tabSheet.getOwnComponents().size() + 1;
        String tabLabel = "Tab " + newTabIndex;
        tabSheet.add(tabLabel, new Div());
    });
    return button;
}| 1 | Установите суффикс. Метод createAddTabButton()реализует соответствующую логику. |