Построитель анимаций Angular вернул нулевые элементы, когда в запросе используется :enter

Я использую AnimationBuilder и AnimationPlayer для анимации дочерних элементов с помощью функции query

Однако он перестает работать, когда я использую :enter в запросе

private createAnimation(animation): AnimationFactory {
  return this.animationBuilder.build([
    query(
       // '.child-element',    // This works
      ':enter .child-element', // This does not work !
      [
        stagger(100, [useAnimation(animation)])
      ]
    )
  ]);
}

ОШИБКА Ошибка: невозможно создать анимацию из-за следующих ошибок: query(":enter .child-element") вернул нулевые элементы. (Используйте query(":enter .child-element", { optional: true }), если хотите разрешить это.)

Я понимаю, что ошибка возникла из-за того, что элементы не были отрисованы при вызове функции createAnimation, но тогда как я могу применить анимацию к дочернему событию :enter?

Тот же код выше работает, если я использую традиционный способ анимации Angular, но мне нужно, чтобы это выполнялось динамически во время выполнения.

Вот репродукция stackblitz


person Murhaf Sousli    schedule 19.10.2018    source источник


Ответы (1)


query(:enter) и :leave не работают, используйте эту ссылку, чтобы узнать, как правильно использовать переходы

Анимация Angular 4 не запускается при изменении маршрута

person yfdgvf asdasdas    schedule 03.11.2018