向组件添加动画时,我在控制台中收到以下错误:
Reduce of empty array with no initial value
My Angular Version: 2.0.0
动画代码:
animations: [
trigger('routerTransition', [
state('void', style({ position: 'fixed', width: '100%' })),
state('*', style({ position: 'fixed', width: '100%' })),
transition(':enter', [
style({ transform: 'translateX(100%)' }),
animate('0.5s ease-in-out', style({ transform: 'translateX(0%)' }))
]),
transition(':leave', [
style({ transform: 'translateX(0%)' }),
animate('0.5s ease-in-out', style({ transform: 'translateX(-100%)' }))
])
])
]
错误:
答案 0 :(得分:3)
事实证明我正在使用Angular 2.1.0版中引入的新动画别名,我正在关注this示例我没有意识到我的Angular版本与示例中的不同。
在挖掘调用堆栈后,我发现实际错误是:
<强> the provided :enter is not of a supported format
强>
如果在控制台中记录了此错误,那将会很有帮助。
升级到Angular 2.1.0解决了错误。
从发行说明中摘录:
Angular中的动画通过添加以下内容得到增强:输入和:为常见的void =&gt;留下别名*和* =&gt;无效状态的变化。已使用这些别名更新了转换API文档。