#angular #typescript #data-binding #static
Вопрос:
Я пытаюсь создать функцию в файле utility.ts со следующими:
import { HttpClient } from "@angular/common/http";
export class Utility {
static casperStake :number = postData.data.total;
static casperSupply:number = 7083291380;
public postaData: Object;
static casperAPY = calculateCasperAPY(Utility.casperStake,Utility.casperSupply);
constructor(private http:HttpClient){}
public getAPIInfo(){
this.http.get('https://api.cspr.live/supply')
.subscribe((data)=>{
this.postaData = data;
})
}
function calculateCasperAPY(stake:number, supply:number):number {
return 8*(stake/supply)
}
}
Я экспортирую переменную casperAPY в другой файл и хочу, чтобы она оставалась статичной.
Это приводит к ошибке: свойство «postData» не существует для типа «Утилита typeof». ts(2339)
Комментарии:
1. Какова ваша цель при этом? Доступ к статическим членам класса осуществляется с использованием имени класса и точечной нотации без создания объекта. Но вы пытаетесь получить доступ
postData
как член класса утилиты. Так что эта строкаstatic casperStake :number = postData.data.total;
на самом деле не имеет для меня смысла. Может быть, посмотрите на статику ts здесь: tutorialsteacher.com/typescript/typescript-static