1
我有一个动态创建的提醒组件。当警报显示和隐藏时,我希望淡入/淡出动画。在创建警报时,似乎动画不会触发,但是当警报关闭时,动画确实会触发。加载角度2/4动画动态组件
经过进一步的调查,我意识到警报并没有消退,这是因为在视图位于DOM之前触发的ngOnInit()
函数中与动画触发器绑定的属性发生了更改,因此会发生动画组件在屏幕上之前。
export class OverlayMessageComponent implements OnInit {
...
ngOnInit() {
if(this.autoShow) {
this.show();
}
}
...
}
我知道我可以在ngAfterViewInit()
功能更改的属性,但是这可能会导致异常所强调here“表达它检查后发生了变化”。
我试图添加一个动画触发器,使用* => true
和void => true
,但这并没有解决问题。我不知道是否有办法触发这个动画,并以某种方式仍然使用ngOnInit()
。
代码示例:https://plnkr.co/edit/8NvfhDvLVBd71I7DR0kW