I have two routed components and their container to which I've set an animation trigger, @slide
, wherein I query for each and animate accordingly.
<div [@slide]="o.activatedRouteData.name">
<router-outlet #o="outlet"></router-outlet>
<div>
RouterModule.forRoot([
{ path: '', component: HomeComponent, data: { name: 'home' } },
{ path: 'login', component: LoginComponent, data: { name: 'login' } } ])
trigger('slide', [
transition('login => home', [
query('home', style({ left: '-120%', right: '120%' })),
query('login', style({ left: '0', right: '0' })),
query('home', animate(duration, style({ left: '0', right: '0' }))),
query('login', animate(duration, style({ left: '120%', right: '-120%' })))
])
This works, except that the second animation waits for the first to complete before firing, while what I'm looking for is a way to have them fire in parallel. Thoughts?