Route Transitions
Route-overgangen bieden declaratieve geanimeerde overgangen bij het navigeren tussen routes. Gebouwd op de View Transitions API, laat het toevoegen van de @RouteTransition annotatie aan je routecomponenten de router automatisch de animatiefase tijdens de navigatie afhandelen.
Deze API is gemarkeerd als experimenteel sinds 25.11 en kan in toekomstige releases veranderen. De API-handtekening, gedrag en prestatiekenmerken kunnen worden gewijzigd.
Voor complexere overgangscenario's of programmatiche controle, gebruik de View Transitions API rechtstreeks.
De @RouteTransition annotatie
De @RouteTransition annotatie definieert hoe een routecomponent animeert bij het binnenkomen of verlaten van de weergave:
@Route
@RouteTransition(enter = ViewTransition.ZOOM, exit = ViewTransition.FADE)
public class DashboardView extends Composite<Div> {
// weergave-implementatie
}
De annotatie accepteert de volgende eigenschappen:
| Eigenschap | Beschrijving |
|---|---|
enter | Animatie toegepast wanneer deze weergave verschijnt |
exit | Animatie toegepast wanneer deze weergave verlaat |
Beide eigenschappen accepteren een van de vooraf gedefinieerde overgangstypen of een aangepaste string waarde:
| Constant | Effect |
|---|---|
ViewTransition.NONE | Geen animatie |
ViewTransition.FADE | Crossfade tussen oude en nieuwe inhoud |
ViewTransition.SLIDE_LEFT | Inhoud beweegt naar links (zoals vooruit navigeren) |
ViewTransition.SLIDE_RIGHT | Inhoud beweegt naar rechts (zoals terug navigeren) |
ViewTransition.SLIDE_UP | Inhoud beweegt omhoog |
ViewTransition.SLIDE_DOWN | Inhoud beweegt omlaag |
ViewTransition.ZOOM | Oude inhoud krimpt weg, nieuwe inhoud groeit in |
ViewTransition.ZOOM_OUT | Oude inhoud groeit weg, nieuwe inhoud krimpt in |