Angular可以启动计时器但无法停止它
创始人
2024-10-27 20:01:32
0次

可以使用RxJS中的Interval Observable来代替原生的setInterval函数,并使用takeUntil操作符来停止计时器。 示例代码如下:

import { Component, OnDestroy } from '@angular/core'; import { interval, Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators';

@Component({ selector: 'app-counter', template: {{ counter }} }) export class CounterComponent implements OnDestroy { counter = 0; private interval$ = interval(1000); private stop$ = new Subject();

start() { this.interval$ .pipe(takeUntil(this.stop$)) .subscribe(() => { this.counter++; }); }

stop() { this.stop$.next(); this.stop$.complete(); this.counter = 0; }

ngOnDestroy() { this.stop$.next(); this.stop$.complete(); } }

在上面的代码中,我们定义了一个Interval Observable来代替setInterval函数,并在start函数中使用takeUntil操作符来停止计时器。我们还定义了一个stop$Subject来控制计时器应停止,并在stop函数中调用了next和complete方法以确保计时器被完全停止。我们也实现了ngOnDestroy接口以在组件销毁时停止计时器并清零计数器。

相关内容

热门资讯

玩家交流开挂脚本!城市打炸弹多... 玩家交流开挂脚本!城市打炸弹多功能开挂脚本,城市打炸弹一贯是真的有开挂脚本暗藏猫腻,小编详细说明城市...
分享实测透视挂工具!朋朋政和麻... 分享实测透视挂工具!朋朋政和麻将多功能透视挂工具,朋朋政和麻将切实是有透视挂工具1、首先打开朋朋政和...
2分钟细说作弊器app!咔遛游... 2分钟细说作弊器app!咔遛游戏多功能作弊器app,咔遛游戏原来真的是有作弊器app1、咔遛游戏破解...
分享一款外挂技巧!中至汾阳麻将... 分享一款外挂技巧!中至汾阳麻将多功能外挂技巧,中至汾阳麻将原来存在有外挂技巧1、中至汾阳麻将辅助器安...
玩家必看分享辅助器技巧!响水麻... 玩家必看分享辅助器技巧!响水麻将多功能辅助器技巧,响水麻将竟然真的是有辅助器技巧1、该软件可以轻松地...
玩家必看科普辅助器教程!玩棋牌... 玩家必看科普辅助器教程!玩棋牌斗地主多功能辅助器教程,玩棋牌斗地主都是存在有辅助器教程暗藏猫腻,小编...
终于懂了辅助方法!天津麻将多功... 终于懂了辅助方法!天津麻将多功能辅助方法,天津麻将好像真的有辅助方法1.天津麻将 选牌创建新账号,点...
科普攻略透视器攻略!逍遥皖北棋... 科普攻略透视器攻略!逍遥皖北棋牌多功能透视器攻略,逍遥皖北棋牌确实存在有透视器攻略逍遥皖北棋牌能透视...
必备教程外挂技巧!启东麻将多功... 必备教程外挂技巧!启东麻将多功能外挂技巧,启东麻将总是存在有外挂技巧1、起透看视 启东麻将辅助软件价...
记者揭秘开挂插件!桃乐甘肃麻将... 记者揭秘开挂插件!桃乐甘肃麻将多功能开挂插件,桃乐甘肃麻将切实有开挂插件1、用户打开应用后不用登录就...