Angular动画第一次能正常运行,但不会在后续调用中运行。
创始人
2024-10-24 13:01:39
0

这可能是由于使用了changeDetection策略'OnPush”的组件导致的。在这种情况下,动画只会在组件输入发生更改时重新计算,并在此基础上运行。因此,如果组件未检测到输入更改,则动画将不再运行。

要解决这个问题,请确保在组件中更改了输入,以通知Angular启动动画。您可以使用RxJs的行为主题来进行此操作。例如,您可以在组件中添加以下内容:

import { Component, OnInit, Input, ChangeDetectionStrategy } from '@angular/core'; import { BehaviorSubject } from 'rxjs';

@Component({ selector: 'app-my-component', templateUrl: './my-component.component.html', styleUrls: ['./my-component.component.css'], changeDetection: ChangeDetectionStrategy.OnPush }) export class MyComponentComponent implements OnInit { @Input() data: any; animationSubject = new BehaviorSubject(false);

constructor() { }

ngOnInit() { }

ngAfterViewInit() { this.animationSubject.next(true); }

triggerAnimation() { this.animationSubject.next(false); setTimeout(() => { this.animationSubject.next(true); }, 0); } }

此代码利用了RxJs的行为主题,每次更改数据输入时都会通知更改检测。此外,在调用动画时,我们将先将主题设置为false,然后立即将其重置为true以重新计算动画。

相关内容

热门资讯

科技通报!wepoker怎么设... 科技通报!wepoker怎么设置盖牌(辅助挂)原来是真的有挂(有挂教学辅助工具)一、游戏安装教程牌型...
分享给玩家!WePoKer辅助... 分享给玩家!WePoKer辅助器(辅助挂)本来有挂(有挂讲解辅助软件)是不是有人用挂微扑克wpk插件...
玩家必看!德普辅助软件(辅助挂... 玩家必看!德普辅助软件(辅助挂)原来有挂(有挂辅助辅助器)1、首先打开辅助器下载最新版本,在辅助首页...
推荐几款新版!wepoker私... 推荐几款新版!wepoker私人局有透视吗(辅助挂)总是是真的有挂(有挂攻略辅助软件)1、在插件功能...
发现一款!约局吧开挂(辅助挂)... 发现一款!约局吧开挂(辅助挂)真是是真的有挂(讲解有挂辅助攻略)辅助器是一种具有地方特色的麻将游戏,...
科普!wepoker有没有插件... 科普!wepoker有没有插件(辅助挂)总是是有挂(有挂神器辅助工具)1、进入游戏-大厅左侧-新手福...
重大科普!扑克之星辅助(辅助挂... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家在这款游戏中打...
玩家必备教程!德州透视插件(辅... 玩家必备教程!德州透视插件(辅助挂)竟然存在有挂(证实有挂辅助脚本)1、进入到是否有挂之后,能看到左...
实测分享!哈糖大菠萝挂(辅助挂... 实测分享!哈糖大菠萝挂(辅助挂)都是真的有挂(有人有挂辅助教程)1、完成有辅助插件,帮助玩家取得所有...
重大发现!wepokerh5破... 重大发现!wepokerh5破解(辅助挂)好像真的是有挂(有挂秘诀辅助攻略)运辅助工具,进入游戏界面...