Angular 2 post方法给出了类型脚本错误

Angular 2 post方法给出了类型脚本错误,angular,typescript,api,angular-services,Angular,Typescript,Api,Angular Services,我正在使用Angular 2,通过服务与API交互。 我有一个方法,我想用它发布到API中 src/app/application/users/create new user/create new user.component.ts(146,5)中出错:错误TS2554:应为0个参数,但得到1个 appservice.ts createUser(): Observable<any> { const headers = new HttpHeaders() .set('se

我正在使用Angular 2,通过服务与API交互。
我有一个方法,我想用它发布到API中

src/app/application/users/create new user/create new user.component.ts(146,5)中出错:错误TS2554:应为0个参数,但得到1个

appservice.ts

createUser(): Observable<any> {

  const headers = new HttpHeaders()
    .set('security-token', localStorage.getItem('loginToken'));

  return this.http.post<any>(this.basePath + '/user-groups', { headers })
    .pipe(
      map((response => {
        return response.data;
      }))
 createUser(data:any): Observable<any> {


    let headers = new HttpHeaders();
    headers = headers.set('security-token', localStorage.getItem('loginToken'));

    return this.http.post(this.basePath + '/user-groups', data, { headers })
  }
createUser():可观察{
const headers=新的HttpHeaders()
.set('security-token',localStorage.getItem('loginToken');
返回this.http.post(this.basePath+/user groups',{headers})
.烟斗(
映射((响应=>{
返回响应数据;
}))

上述代码中有许多错误。我将根据相关性指出它们。 1.传递的参数必须在createUser函数中定义。 2.在POST请求中,您只设置头,不传递任何数据,这是您的主要目的。 3.不能返回response.data,而只返回POST方法的输出,因为createUser的返回类型是可观察的

因此,编写代码的正确方法必须是:

createUser(数据:任意):可观察{

const headers=new HttpHeaders().set('security-token',localStorage.getItem('loginToken')

返回this.http.post(this.basePath+/user groups',data,{headers:headers}) }

试着这样做:

user.ts

  submitData() {

    var submitData =
    {
      first_name: formData.firstName,
      last_name: formData.lastName,
      email: formData.email,
      password: formData.password,
      address_1: formData.address1,
      address_2: formData.address2,
    }
    this.appService.createUser(submitData).subscribe((result: any) => {
      if (result != '') {
        console.log(result)
      }
    })
  }
appservice.ts

createUser(): Observable<any> {

  const headers = new HttpHeaders()
    .set('security-token', localStorage.getItem('loginToken'));

  return this.http.post<any>(this.basePath + '/user-groups', { headers })
    .pipe(
      map((response => {
        return response.data;
      }))
 createUser(data:any): Observable<any> {


    let headers = new HttpHeaders();
    headers = headers.set('security-token', localStorage.getItem('loginToken'));

    return this.http.post(this.basePath + '/user-groups', data, { headers })
  }
createUser(数据:任意):可观察{
let headers=新的HttpHeaders();
headers=headers.set('security-token',localStorage.getItem('loginToken');
返回this.http.post(this.basePath+/user groups',data,{headers})
}

添加一些代码,以便社区可以帮助您添加一些代码。您的服务可能需要一些参数,但您在呼叫时没有提供这些参数。根据您目前提供的信息,您在代码中的某个地方给了一个不接受任何参数的方法一个参数。@AdritaSharma可以吗help@AmeerPappay我使用参数