В моем приложении также есть вложенные макеты.
Мой маршрутный макет
- -MainUI
- - BookingsPage (имя маршрута: бронирования), родительский:MainUI
- --- Бронирование (Название маршрута: бронирование), Родитель: BookingsPage
- --- Поиск (Имя маршрута: поиск), Родитель: BookingsPage
Мой MainUI.class не имеет аннотации @Route, но реализует RouterLayout
My BookingsPage.class в качестве этих аннотаций ..
@RoutePrefix(value="bookings")
@ParentLayout(MainUI.class)
Мой Booking.class имеет следующую аннотацию:
@Route(value="booking", layout=BookingsPage.class)
Мой Search.class имеет следующую аннотацию:
@Route(value="search", layout=BookingsPage.class)
Таким образом, вы можете перейти к
/bookings/booking
/bookings/search
без обновления страницы.Например,
UI.getCurrent().navigate("bookings/search");
У меня также есть
@RouteAlias(value="",layout=BookingsPage.class)
на странице Search.class, так что вы можете перейти к
/bookings
и перейти на страницу поиска (такжекак при переходе к / bookings / search, так же как страница по умолчанию для / bookings является страницей поиска).
Надеюсь, это поможет.
Stuart