在typescript中找不到名称"Let"(TS2304)、"headers(TS255



我是一个角度和离子的初学者,我试图遵循教程,但最终会出现这些错误。

  • 找不到名称"Let"(TS2304(
  • 找不到名称"headers"。你是说"页眉"吗?(TS2552(
  • 找不到名称"options"。你是说"期权"吗?(TS2552(

下面是我的访问供应商代码.ts

import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders, HttpErrorResponse } from '@angular/common/http';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/timeout';
import { fileURLToPath } from 'url';
@Injectable()
export class AccessProviders {
//url backend api json
server: string ='http://localhost/login-register-home/api';
constructor(public http: HttpClient){}
postData(body, file){
Let headers = new HttpHeaders({
'Content-Type' : 'application/json; charset=UTF-8'
});
Let options = {
headers: headers
}
return this.http.post(this.server + file,JSON.stringify(body), options)
.timeout(59000)// 59 sec timeout
.map(res => res);
}
}

额外信息:

  • Angular CLI&角度:9.0.7
  • 节点:12.16.1
  • rxjs:6.5.4
  • 打字脚本:3.7.5

有人能帮我吗?我真的很笨。谢谢

您输入了一个错误。Let应该是letlet是用于声明可以更新的变量的关键字。您可以通过以下方式声明变量:

  • var options = {}
  • let options = {}
  • const options = {}

只要变量本身不更新,就应该使用const

const options = {};
options.prop = 'value'; // fine
options = {}; // error

在所有其他情况下都应该使用let

var已经过时,没有理由在Angular中使用它。

最新更新