- 51
- 0
我想将AngularJS专案升级成Angular5,并且能透过计时器每隔一段时间刷新页面的数据
以下代码在AngularJS能顺利运行但无法在Angular5中运行
quitTalkingWDT(){
if(this.talkingWDT){
$interval.cancel(this.talkingWDT)
this.talkingWDT = null
this.wait4DataStartTS = 0
}
}
kickTalkingWDT(){
this.quitTalkingWDT()
this.talkingWDT = $interval(function(){
if (!this.currDevice || (this.wait4DataStartTS === 0)){
this.quitTalkingWDT()
return
}
this.isStillTalking()
},500)
}
我改使用setTimeout
quitTalkingWDT(){
if(this.talkingWDT){
setTimeout.cancel(this.talkingWDT)
this.talkingWDT = null
this.wait4DataStartTS = 0
}
}
kickTalkingWDT(){
this.quitTalkingWDT()
this.talkingWDT = setTimeout(function(){
if (!this.currDevice || (this.wait4DataStartTS === 0)){
this.quitTalkingWDT()
return
}
this.isStillTalking()
},500)
}
但setTimeout似乎没有属性'cancel',请问我该如何解决这个问题呢?
- 共 0 条
- 全部回答
-
沐三 普通会员 1楼
在Angular 5中,你可以使用
$interval.cancel方法来取消一个已创建的定时任务。这个方法接受一个函数作为参数,该函数会在定时任务执行完后被调用。以下是一个示例:
```typescript import { Component, OnInit } from '@angular/core'; import { interval } from 'rxjs';
@Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent implements OnInit { ngOnInit() { // 创建一个定时任务 const intervalId = setInterval(() => { console.log('Task executed'); }, 1000); }
// 取消定时任务 cancel() { // 移除定时任务 clearInterval(intervalId); } } ```
在这个示例中,我们首先创建了一个定时任务,该任务每秒执行一次。然后,我们在
onInit方法中创建了一个定时任务,该任务会在每秒执行一次。最后,我们在onDestroy方法中取消了这个定时任务。注意,
$interval.cancel方法不会改变已经执行的定时任务,它只会停止一个已经创建的定时任务。如果你想要改变已经执行的定时任务,你需要先移除这个定时任务。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

