gpt4 book ai didi

javascript - typescript 返回类型为 'void' 的参数不能分配给类型为“TimerHandler?”的参数?

转载 作者:太空狗 更新时间:2023-10-29 18:09:22 25 4
gpt4 key购买 nike

我想像我们在主页上的 facebook 和 linkedin 中那样更新实时服务器上使用的 angular 7 接收到的消息数,我尝试了以下代码:-

获取消息的代码:-

getMessageCount(rid:any)
{
return this.http.get<any>(this.apiUrl+'message/'+rid);
}
on the main page we have the following code run like this :-
export class HomeComponent implements OnInit {
userAuthenticated=false;
private tmessage:any;
constructor(private service:LoginService,private mService:MessagingService) {
if(this.service.currentUserValue)
{
this.userAuthenticated=true;
const id=this.service.currentUserValue.id;
window.setInterval(this.getMessages(id),5);

}
}
}

发送新消息后,它应该在不重新加载页面的情况下更新,谁能告诉我我可以做些什么来实现它?

最佳答案

你没有提供getMessages,所以我只能猜测。

我的猜测是,getMessages 是一个 void 函数,执行某些操作,可能更新模型/ View 并且不返回任何内容,而 setTimeout 的第一个参数应该是一个函数.因此,这

      window.setInterval(this.getMessages(id), 5);

应该是

      window.setInterval(() => this.getMessages(id), 5);

关于javascript - typescript 返回类型为 'void' 的参数不能分配给类型为“TimerHandler?”的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55559911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com