首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Delay *ngIf语句

Delay *ngIf语句
EN

Stack Overflow用户
提问于 2021-03-14 04:50:52
回答 1查看 95关注 0票数 0

我在我的网站上有一个按钮,当我点击它时,会发生以下情况:

代码语言:javascript
复制
<div class="btn" (click)="toggleStatus=!toggleStatus;>
    <i class="fa-regular fa-plus" *ngIf="!toggleStatus"></i>
    <i class="fa-regular fa-minus" *ngIf="toggleStatus"></i>
</div>

到目前一切尚好。非常简单,它只是根据toggleStatus改变按钮内的图标。然而,当点击这个按钮时,在我的网站上发生了一些其他的事情,包括一些动画。至少在返回到默认状态时,我需要图标不是立即出现,而是在几秒钟后出现,这将与其他动画完美匹配。

有没有什么方法可以延迟这个*ngIf更改,或者这是一项很大的工作?

EN

回答 1

Stack Overflow用户

发布于 2021-03-14 05:21:16

解决方案1

toggleStatus将被更改时,使用固定时间的setTimeout。不过,这似乎不是最佳实践。

解决方案2

如果使用角度动画,则在动画完成后会触发一个事件。

请在此处查看通告完成事件documentation

然后,您可以接收该事件,并使用eventEmmiter提交一个值。如果您其他组件侦听发射器上的更改(已订阅),则可以更改toggleStatus的值。这样,您可以确保toggleStatus在动画完成时直接更改。

如果您提供有关您的问题的更多信息,我将能够为您提供更多帮助。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66618403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档