繁体   English   中英

错误 TS2554:需要 1 个参数,但得到 0

[英]error TS2554: Expected 1 arguments, but got 0

如何解决这个问题任何人都可以帮助我。

使用 Angular 5

我的角度方法:

list.component.ts 文件

 ngOnInit() {
       this.getUserdata(1);
      }

      getUserdata(event){
        this.userService.getUsers(event).then( users => {
                this.users = users;
      },
          (error)=>{
            return false;
          }
      );
      }

user.service.ts 文件

 getUsers(page:Number):Promise<User[]>{
     let currentUser = JSON.parse(localStorage.getItem('currentUser'));
    let headers = new Headers({ 'Authorization': `Bearer ${currentUser.token}` });

    let options = new RequestOptions({ headers: headers });

    return this.http.get(`${environment.apiEndPoint}/api/users/${page}`, options)
     .toPromise()
     .then(res=>res.json())
     //.catch(this.errorservice.handleError);
     .catch((error) => {
        //return Promise.reject(error);
       return  this.router.navigate(['/login']);
      })
}

当我发送参数然后显示错误我该如何解决它。

错误 TS2554:需要 1 个参数,但得到 0。

getUsers 方法返回一个 Promise,所以在你的 then 回调中你不能传递第二个参数来处理错误。

getUserdata(event){
      this.userService.getUsers(event).then( users => {
              this.users = users;
    })
}

如果您想在那里处理错误,请在服务的 catch 回调中抛出错误并在 getUserData 中捕获它

getUserdata(event){
      this.userService.getUsers(event).then( users => {
              this.users = users;
    }).catch(err=>console.log(err));
   }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM