基本Javascript筛选函数在Angular2中无法正常工作

基本Javascript筛选函数在Angular2中无法正常工作,javascript,angular,typescript,Javascript,Angular,Typescript,这应该是非常简单的,但是我在Typescript中的过滤函数一直给我一个错误。这是我的密码: HighScore:HighScore[]; deletePlayer(电子邮件:string){ this.scoreDataService.deletePlayer(电子邮件) .订阅( this.highScores=this.highScores.filter(highScore=>highScore.email!==email) ); } filter函数应该只返回一个数组HighScore

这应该是非常简单的,但是我在Typescript中的过滤函数一直给我一个错误。这是我的密码:

HighScore:HighScore[];
deletePlayer(电子邮件:string){
this.scoreDataService.deletePlayer(电子邮件)
.订阅(
this.highScores=this.highScores.filter(highScore=>highScore.email!==email)
);
}
filter函数应该只返回一个数组HighScore[],但相反,我一直得到以下错误:

'HighScore[]类型的
参数不能分配给'NextoServer | ErrorObserver | CompletionObserver'类型的参数。。。
类型“HighScore[]”不可分配给类型“(值:响应)=>void”。Tyope“HighScore[]”未提供与签名匹配的内容(值:响应):void'

最奇怪的是,即使有这个错误,这段代码也能完美地运行和工作。有人知道会发生什么吗?提前谢谢你

subscribe
需要一个函数参数:

this.scoreDataService.deletePlayer(email) 
  .subscribe(() => {
     this.highScores = this.highScores.filter(highScore => highScore.email !== email)
   });

subscribe
需要一个函数参数:

this.scoreDataService.deletePlayer(email) 
  .subscribe(() => {
     this.highScores = this.highScores.filter(highScore => highScore.email !== email)
   });

您的错误听起来很像这样:我强烈怀疑代码是否能够完美地运行和工作。不管怎样,为什么您认为filter函数工作不正常,或者是它导致了错误?仔细阅读错误消息——与大多数错误消息一样,它几乎可以准确地告诉您出了什么问题。您的错误听起来很像这样:我强烈怀疑代码是否运行良好。不管怎样,为什么您认为filter函数工作不正常,或者是它导致了错误?仔细阅读错误消息——与大多数错误消息一样,它可以准确地告诉您出了什么问题。