我有一个使用 angular 2 构建的测试应用程序,我已经成功地在路线更改之间应用了一个动画
state('default', style({
opacity: 1,
transform: 'scale(1) translateY(0)'
})),
transition('void <=> default', [
style({ opacity: 0, transform: 'scale(.9) translateY(-20px)' }),
animate('.2s')
])
但是当列表页面更改为项目页面时,我也想要不同的动画,例如单击英雄列表中的英雄,所以我这样做了
state('childActivate', style({
opacity: 1,
transform: 'scale(1) translateY(0)'
})),
transition('childActivate => void', [
animate('1.2s', style({
transform: 'scale(0.9) translateY(-120px)',
opacity: 0
}))
])
在单击项目后和导航之前,我尝试将状态设置为“childActivated”:
onHeroSelected(heroEvent: Hero) {
this.animState = "childActivate";
this.router.navigate(['/hero-detail', heroEvent.id]);
}
但没有效果。
如何在路线之间获得多个动画?