0

私はng2-chartsAngular-cliで構築されたアプリケーションに取り組んでいます。私はかなり新しいので、どんな助けでも大歓迎です。Firebase でデータをセットアップしました。そのデータにアクセスするためのサービスでメソッドを作成し、このコードを使用すると

getGraphData():Observable<any>{
        var graphData$ = this.af.database.list(`graphdata/${this.uid}`)
          .map(tspa => tspa.map(tpa => tpa.$value))
          .do(console.log);

        graphData$.subscribe();
        return Observable.of([]);
 }

コンソールは正しいデータを記録します。

元。[1000, 5000, 2000]

問題は、次のように結果を返すようにメソッドを変更したときです。

getGraphData():Observable<any>{
        return this.af.database.list(`graphdata/${this.uid}`)
          .map(tspa => tspa.map(tpa => tpa.$value))
}

コンポーネントの変数に割り当ててみてください。私は常に次のコンソールログを取得します:

>FirebaseListObservable

flatMapandを使用するなど、目的の結果を得るためのさまざまな方法を見てきましたがObservable.combineLatest() 、他の結果を得ることができません。棒グラフに表示するために変数に配列として割り当てたい json データがあります。

グラフ.ts

  data$: any;
  form$: any;

  public barChartLabels:string[] = ['Account1', 'Account2', 'Account3', 'Account4', 'Account5', 'Account6', 'Account7'];
  public barChartType:string = 'bar';
  public barChartLegend:boolean = true;

  firstVar:any = [28, 48, 40, 19, 86, 27, 90];
  secondVar:any = [28, 48, 40, 19, 86, 27, 90];

  public barChartData:any[] = [
    {data: this.firstVar, label: 'Series A'},
    {data: this.secondVar, label: 'Series B'}
  ];

firstVar新しい Firebase データを割り当てたいと思います。助言がありますか?

私は通常、次のようにメソッドにアクセスします:

 ngOnInit() {
    this.firstVar = this.transactionsS.getGraphData();
    console.log(this.firstVar)

  }

updateGraph(){
   this.firstVar = this.transactionsS.getGraphData()
    console.log(this.firstVar)

}
4

1 に答える 1