簡體   English   中英

將Firebase JSON轉換為TypeScript數組

[英]Convert firebase json to typescript array

我可以很容易地使數據在HTML中工作,但是當出於可視化目的而不得不轉換數據時,這很費力。

我將數據作為FirebaseListObservable獲得。 在我的情況下,每個列表中都有3個值類型,但是它只是其中之一,必須是數組的一部分。 如何將FirebaseListObservable轉換為打字稿中的數組?

轉換的原因是在我的應用程序中使用圖形。

Typescript獲取數據:

this.measure= this.db.list('/Users/'+this.username+'/Measure');
enter code here

Chart.js的打字稿

this.data = [12, 24, 91, 23] 

數據必須是來自Firebase的數據

聲明一個空數組data=[];

然后使用.subscribe()獲取數據

this.db.list('/Users/'+this.username+'/Measure').subscribe(measures => {
    measures.forEach(measure => {
      this.data.push(measure.number);//.number should be your field in firebase
    })
  })

這將獲取所有列表並搜索所有項目,並將所需的值推送到數組。

FirebaseListObservable是可觀察的。 這意味着您可以在訂閱列表時獲得列表本身(=所需的數組)。

this.measure: FirebaseListObservable<Measure[]> = this.db.list('/Users/'+this.username+'/Measure');
this.measure
    .map(measurement => measurement.numbers) // this extracts only numbers field so we have basically array of arrays
    .map(numbersArrays => numbersArrays.reduce((curr, prev) => curr.concat(prev))) // so lets concat all those arrays into a single one
    .subscribe(numbersArray: number[] => {
        console.log(numbersArray);
    });

interface Measure {
    data: Date;
    geolocation: string;
    numbers: number[];
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM