【问题标题】:Angular - Parameter 'url' implicitly has an 'any' type.ts(7006) in Angular ServiceAngular - 参数 'url' 在 Angular 服务中隐含了一个 'any' type.ts(7006)
【发布时间】:2021-06-02 06:50:29
【问题描述】:

在我的 Angular-11 服务中,我有以下代码:

post(url, data, headers){
  return this.http.post(`${this.baseURL}${url}`, data, { headers: new HttpHeaders(headers) } )
}

get(url, headers){
  return this.http.get(`${this.baseURL}${url}`, { headers: new HttpHeaders(headers) } )
}

delete(url,headers){
  return this.http.delete(`${this.baseURL}${url}`, { headers: new HttpHeaders(headers) } )
}

put(url, data, headers){
  return this.http.put(`${this.baseURL}${url}`, data, { headers: new HttpHeaders(headers) } )
}

我收到了这个错误:

参数 'url' 隐含一个 'any' type.ts(7006)

参数 'data' 隐含一个 'any' 类型.ts(7006)

参数 'headers' 隐含一个 'any' type.ts(7006)

我该如何解决这个问题?

谢谢

【问题讨论】:

    标签: angular


    【解决方案1】:

    您应该创建一个界面或输入您期望的 url 类型(如果它是一个 url,它可能是一个字符串)。例如:

    export interface IUrl{
    ...
    }
    

    然后修改函数参数列表;

    post(url:IUrl ,...){
    ...
    }
    

    post(url:string ,...){
    ...
    }
    

    或者作为第二种方式(我不建议您这样做),您可以将输入参数声明为显式声明的任何类型:

    post(url:any ,...){
    ...
    }
    

    【讨论】:

      猜你喜欢
      • 2023-01-02
      • 1970-01-01
      • 2021-04-19
      • 2020-07-30
      • 1970-01-01
      • 1970-01-01
      • 2018-07-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多