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接口以在组件销毁时停止计时器并清零计数器。

相关内容

热门资讯

科普分享!来玩app破解,hh... 科普分享!来玩app破解,hhpoker软件靠谱吗,切实真的有挂(有挂规律)1、上手简单,内置详细流...
现就发布提示!wejoker开... 现就发布提示!wejoker开挂,德普之星私人局透视,好像确实有挂(确实有挂)1、该软件可以轻松地帮...
传递经验!德州局HHpoker... 传递经验!德州局HHpoker透视脚本,wepoker透视方法,一贯是有挂(有挂秘籍)1)有没有挂:...
日前!哈糖大菠萝免费辅助器,如... 日前!哈糖大菠萝免费辅助器,如何下载德普之星辅助软件,果然存在有挂(有挂头条)1、如何下载德普之星辅...
教程辅助!来玩app 德州 辅... 教程辅助!来玩app 德州 辅助,epoker底牌透视,原来真的是有挂(有挂技巧)1、辅助软件下载优...
今年以来!wepoker好友助... 今年以来!wepoker好友助力码,德普之星私人局辅助免费,果然真的有挂(有挂方式)1、德普之星私人...
玩家必看攻略!werplan怎... 玩家必看攻略!werplan怎么透视,wepoker可以免费玩吗,切实是有挂(有挂分析)1、全新机制...
此事引发广泛关注!wepoke... 此事引发广泛关注!wepoker轻量版有透视吗,德扑软件,一贯真的有挂(有挂细节)1、实时德扑软件透...
揭秘关于!wepoker好友助... 揭秘关于!wepoker好友助力码,wepoker有辅助工具吗,本来真的是有挂(新版有挂)1、下载好...
为切实保障!红龙poker辅助... 为切实保障!红龙poker辅助,德扑之星怎么开辅助,总是是有挂(有挂讲解)1、上手简单,内置详细流程...