gpt4 book ai didi

javascript - 无法读取未定义的属性 'post' - Angular 2

转载 作者:搜寻专家 更新时间:2023-10-30 21:19:53 24 4
gpt4 key购买 nike

下面是我的组件文件中的代码片段

import { Component,Injectable,Inject,OnInit, OnDestroy, EventEmitter,Output } from '@angular/core';
import { Http, Response, Headers, RequestOptions } from '@angular/http';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/toPromise';
import 'rxjs/add/operator/switchMap';
...
@Injectable()
export class MyComponent {
constructor (private http: Http) { }
saveDetails()
{
var response:any;
var body = customer_details;
var headers = new Headers({ 'Content-Type': 'application/json' });
var options = new RequestOptions({ headers: headers });
this.http.post("/user/add-customer-details", body, options)
.map((res:Response) => res.json()).subscribe(
data => { response = data},
err => console.error(err),
() => {
console.log(response);
}
);
}
}

没有编译错误或任何其他错误,但是当我调用 post 方法时,它说 Cannot read property 'post' of undefined 所以我在 post 方法调用之前尝试了 console.log(this.http);,然后它在浏览器控制台中显示 undefined,我尝试了所有可能的解决方案但无法理解为什么它不起作用,请帮助...

提前致谢!!!

最佳答案

在花了几个小时摸索并阅读了所有可能的文章、答案、文档以及可能在 Internet 上可用的所有内容之后,我终于找到了解决方案。

我刚刚更改了我的构造函数

constructor (private http: Http) { }

constructor (@Inject(Http) private http:Http) { }

虽然 @Inject 是一个实验性的装饰器,但它在工作

谢谢大家帮助我...

关于javascript - 无法读取未定义的属性 'post' - Angular 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44353292/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com