Tabbed Application Mode
Дополнение позволяет открывать экраны в отдельных вкладках внутри главного экрана. Благодаря этому пользователи могут одновременно работать с несколькими экранами в одной вкладке браузера и быстро переключаться между ними. Экраны можно открывать последовательно в одной вкладке. В этом случае они образуют стек с навигацией в виде хлебных крошек.
Установка
|
Для этого дополнения требуется Enterprise подписка. Если у вас нет подписки, ознакомьтесь с разделом Пробная Enterprise+BPM подписка, чтобы получить пробную версию. |
Для новых проектов используйте специальный шаблон проекта:
Чтобы перевести существующий проект в режим вкладок, выполните следующие шаги.
-
Убедитесь, что премиум-репозиторий определен в
build.gradle:repositories { // ... maven { url = 'https://nexus.jmix.io/repository/premium' credentials { username = rootProject['premiumRepoUser'] password = rootProject['premiumRepoPass'] } } -
Добавьте следующую зависимость в ваш
build.gradle:implementation 'io.jmix.tabbedmode:jmix-tabbedmode-flowui-starter' -
Измените базовый класс
MainView.javaсStandardMainViewнаStandardTabbedModeMainView.import io.jmix.tabbedmode.app.main.StandardTabbedModeMainView; @Route("") @ViewController(id = "MainView") @ViewDescriptor(path = "main-view.xml") public class MainView extends StandardTabbedModeMainView { } -
В файле
main-view.xmlизмените значение атрибутаxmlnsэлементаmainView, чтобы использовать XSD-схему дополнения:<mainView xmlns="http://jmix.io/schema/tabmod/main-view" title="msg://MainView.title">Затем замените
initialLayoutследующим определениемworkArea:<workArea id="workArea" classNames="jmix-work-area"> <mainTabSheet id="mainTabSheet" classNames="jmix-main-tabsheet" tabsDraggable="true" width="100%" height="100%"> <actions> <action id="closeThisTabAction" type="tabmod_closeThisTab"/> <action id="closeOthersTabsAction" type="tabmod_closeOtherTabs"/> <action id="closeAllTabsAction" type="tabmod_closeAllTabs"/> </actions> </mainTabSheet> <initialLayout id="initialLayout" classNames="jmix-initial-layout" width="100%" height="100%"> </initialLayout> </workArea>