Angular 4 - Как запустить анимацию из директивы?

У меня есть нерешенная проблема по репо здесь, но я решил, что было бы полезно задать ее здесь в любом случае.

Я хочу, чтобы запустить анимацию из директивы программно. Когда используешь Renderer.animate, Я получил:

Renderer.animate is no longer supported!

Когда используешь Renderer.invokeElementMethod, Я получил:

Cannot read property 'apply' of undefined

Как бы я это сделал?

1 ответ

Решение

Изменения приближаются к Angular! Смотрите этот выпуск GitHub в официальном репо Angular.

TL; DR

Что действительно хорошо: с первой бета-версией Angular 4.1 (которая выйдет в качестве последующего выпуска до этой недели 4.0.0) вы можете сделать следующее:

class MyCmp {


constructor(private _builder: AnimationBuilder) {
   }
   myMethod() {
      const animation = this._builder.build([
        style(...),
        animate(...),
        group([
          animate(...)
          animate(...)
          animate(...)
        ])
      ]);
      const player = animation.create(someElement);
      player.play();
   }
}
Другие вопросы по тегам