Сейчас 8 часов пытаются решить тривиальную проблему, и я не могу в это поверить!
здесь, ниже скрипт angular service
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
@Injectable({
providedIn: 'root'
})
export class GetStockDataService {
constructor(public http:HttpClient) { }
RequestData={"query":"{\n stock{\n history{\n \n low\n high\n demand\n }\n }\n}"}
getstockdata(){
return this.http.post('http://localhost:3000/',this.RequestData)
}
}
и вот компонент скрипт, который вызывает эту службу
import { Component, OnInit } from '@angular/core';
import { GetStockDataService } from '../services/get-stock-data.service';
import { Platform } from '@ionic/angular';
@Component({
selector: 'app-Stocks',
templateUrl: 'Stocks.page.html',
styleUrls: ['Stocks.page.scss']
})
export class StocksPage implements OnInit {
constructor(private GetStockData:GetStockDataService , private platform : Platform) {}
res:any
ngOnInit(){
this.getdata().subscribe(data=>{this.res=data});
console.log(this.res)
}
getdata(){
return this.GetStockData.getstockdata() }}
ПОЧЕМУ переменная "res" всегда возвращает NULL ???? зная, что когда я помещаю консоль, записываю переменную внутри нее в функцию в части подписки ... она возвращает данные, но я не могу сделать эту переменную глобальной ... как я могу это сделать? Я просто хочу получить данные из подписки в переменную "res", чтобы позже использовать ее в файле HTML.