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、不需要AI...
指导大家!闲来辅助平台,好友赣... 指导大家!闲来辅助平台,好友赣南辅助器,详细器(有挂透明挂)1、金币登录送、破产送、升级送、活动送。...
这一现象值得深思!hhpoke... 这一现象值得深思!hhpoker软件靠谱吗,德普之星有辅助软件吗,一贯是有挂(有挂工具)1、点击下载...
玩家攻略推荐!摸一把麻将辅助,... 玩家攻略推荐!摸一把麻将辅助,赣南必胜辅助,详细脚本(有挂存在)该软件可以轻松地帮助玩家将摸一把麻将...
详细说明!山西扣点辅助,钱塘十... 详细说明!山西扣点辅助,钱塘十三水怎么开挂辅助,详细工具(有挂教程)1、实时钱塘十三水怎么开挂辅助透...
出乎意料的是!拱趴大菠萝挂哪里... 出乎意料的是!拱趴大菠萝挂哪里,德扑之星辅助器,竟然真的是有挂(有挂透明挂)1、进入游戏-大厅左侧-...
无独有偶!pokemmo手机版... 无独有偶!pokemmo手机版修改器,智星德州插件2024最新版,竟然存在有挂(有挂头条)1、该软件...
实测必看!川南休闲辅助,微信决... 实测必看!川南休闲辅助,微信决胜游戏辅助,详细app(有挂分析)1、实测必看!川南休闲辅助,微信决胜...
总结辅助挂!wepoker游戏... 总结辅助挂!wepoker游戏安装教程,德普之星透视辅助插件,都是存在有挂(有挂技巧)亲,关键说明,...
科技介绍!微信小程序填大坑辅助... 科技介绍!微信小程序填大坑辅助器,途游四川好运符,详细app(有挂分析)1、微信小程序填大坑辅助器破...