不支持递归,解析符号routerAnimation

时间:2017-07-30 07:18:46

标签: angular angular-animations

我正在尝试在--prod模式下构建我的Angular 4.3应用程序,并且出现以下错误(正常构建工作正常):

    ERROR in Recursion not supported, resolving symbol routerAnimation in ..

这就是我的admin.component.ts的样子:

animations: [
    trigger('routerAnimations', [
      transition('* => page1', [
        useAnimation(routerAnimation)
      ]),
      transition('* => page2, [
        useAnimation(routerAnimation)
      ]),
    ])
  ]

和我的动画代码:

export const routerAnimation = animation([
  query(':enter, :leave', style({ position: 'fixed', left: 0, right: 0 }), {optional: true}),
  query(':leave', style({ zIndex: 100 }), {optional: true}),
  query(':enter', style({ transform: 'translateX(-150%)' }), {optional: true}),
  group([
    query(':leave', group([
      animate('300ms cubic-bezier(.35,0,.25,1)', style({ transform: 'translateX(200%)', opacity: 0 })), // y: '-100%'
      animateChild()
    ]), {optional: true}),
    query(':enter', group([
      animate('300ms cubic-bezier(.35,0,.25,1)', style({ transform: 'translateX(0%)' })),
      animateChild()
    ]), {optional: true})
  ])
]);

经过几次测试后,我注意到只有在使用以下动画代码时才会出现错误:

group([
    query(':leave', group([
      animate('300ms cubic-bezier(.35,0,.25,1)', style({ transform: 'translateX(200%)', opacity: 0 })), // y: '-100%'
      animateChild()
    ]), {optional: true}),
    query(':enter', group([
      animate('300ms cubic-bezier(.35,0,.25,1)', style({ transform: 'translateX(0%)' })),
      animateChild()
    ]), {optional: true})
  ])

知道什么是错的吗?

1 个答案:

答案 0 :(得分:0)

看起来像Angular AOT编译器这个问题,问题已在angular github

中打开

有人昨天提交了一个错误修正,它可能会在下一个Angular版本中修复。