gpt4 book ai didi

javascript - ionic/angular 8 ERROR TypeError : this. sendData 不是函数

转载 作者:太空狗 更新时间:2023-10-29 18:27:31 25 4
gpt4 key购买 nike

这是我的代码。我只是想对本地服务器执行 GET 并获取响应(这是一个 JSON 对象)并将其发送到不同的 Angular 组件。出于某种原因,它说 ERROR TypeError: this.sendData is not a function

import { HttpClient, HttpHeaders } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Subject } from 'rxjs';

interface myData {
data: Object
}

@Injectable({
providedIn: 'root'
})
export class ApiService {

goldProducts: any[] = [];
httpOptions: any;

constructor(private http: HttpClient) {}
base_path = 'http://localhost:80';

shareData = new Subject<any>();

sendData(data: any) {
this.shareData.next(data);
}

getGoldProducts() {
this.httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',

})
}
return this.http.get<myData>(this.base_path + '/get/goldProducts', this.httpOptions).subscribe(function(res) {
console.log(res);
this.sendData(res);
});
}
}

它要处理的组件是:

import { Component } from '@angular/core';
import { HttpClientModule } from '@angular/common/http';
import { ApiService } from '../services/api.service';

@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss'],
})
export class HomePage {
goldProducts: any[] = [];

getItemPrices: any[] = [];
constructor(public api: ApiService, public http: HttpClientModule) { }

displayGoldProducts() {
this.api.shareData.subscribe(data => {
console.log(data);
});
this.api.getGoldProducts();
}
}

函数 displayGoldProducts() 只是连接到 html 中的一个按钮。我将获得正确的响应控制台日志,但仅来自 api.service。我不知道如何连接它。我只想要一个可观察的,所以当我从服务器推送新数据(即新价格)时,客户端上的价格将自动更新。在 javascript 中做一些简单的事情,但显然到目前为止在 Angular 上做起来很痛苦。我正在学习 Angular ,教程似乎涵盖了不同的用例。任何帮助将不胜感激,可能只是格式问题。提前谢谢你。

最佳答案

像这样使用你的箭头函数

this.http.get<myData>
(this.base_path + '/get/goldProducts',
this.httpOptions).subscribe
(res => {
this.sendData(res);
});

关于javascript - ionic/angular 8 ERROR TypeError : this. sendData 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57684601/

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