#

Angular Typescript: Move Variable From Constructor to Function

 

Wie kann man eine Variable vom Constructor Aufruf in eine lokale Methode verschieben

 

Aufgabe:

Ich möchte den java Typescript Code der Angular constructor in eine lokale ngOnInit() verschieben

 

Der Code soll von constructor nach ngOnInit() verschoben werden

Constructor

 

constructor(afDb:AngularFireDatabase) {

    //*works

    const itemsRefAngularFireList<any> = afDb.list('Aufgaben');

    itemsRef.valueChanges().subscribe(

      x=>this.firebase_Data =  x;}

      );    

 

  }

 

 

 

Man kann den javascript Code verschieben indem man die include parameter bei aufruf des constructors mit private declariert und beim Aufruf in den neuen Funktion ein this. Hinzufügt

 

Code nach der Umstellung.

Mit .this in der Methode und private im Constructor

 

  constructor(private afDb:AngularFireDatabase) {

    

  }

 

  ngOnInit()

  {

    //*works

    const itemsRefAngularFireList<any> = this.afDb.list('Aufgaben');

    itemsRef.valueChanges().subscribe(

      x=>this.firebase_Data =  x;}

      );    

 

  }

 

 

App.component.ts  vor der Umstellung

 

export class AppComponent {

  //--< Daten >--

  title = 'dailycheck';

  //public firebase_Data: Observable<any>[]; //works with AngularFireList<any>..subscribe(x=>{ this.aufgaben= x;}

  public firebase_Data;

  //--</ Daten >--

 

  //--< Daten von Firebase holen >--

  constructor(afDb:AngularFireDatabase) {

    //*works

    const itemsRefAngularFireList<any> = afDb.list('Aufgaben');

    itemsRef.valueChanges().subscribe(

      x=>this.firebase_Data =  x;}

      );    

 

  }

 

  ngOnInit()

  {

    

  }

 

  //--</ Daten von Firebase holen >--

}

 

 

App.component.ts nach der Umstellung

import { Component } from '@angular/core';

import { AngularFireDatabase,AngularFireList }  from 'angularfire2/database';

import { Observable } from 'rxjs';

 

@Component({

  selector: 'app-root',

  templateUrl: './app.component.html',

  styleUrls: ['./app.component.css']

})

export class AppComponent {

  //--< Daten >--

  title = 'dailycheck';

  //public firebase_Data: Observable<any>[]; //works with AngularFireList<any>..subscribe(x=>{ this.aufgaben= x;}

  public firebase_Data;

  //--</ Daten >--

 

  //--< Daten von Firebase holen >--

  constructor(private afDb:AngularFireDatabase) {

    

  }

 

  ngOnInit()

  {

    //*works

    const itemsRefAngularFireList<any> = this.afDb.list('Aufgaben');

    itemsRef.valueChanges().subscribe(

      x=>this.firebase_Data =  x;}

      );    

 

  }

 

  //--</ Daten von Firebase holen >--

}

 

 

 

Mobile

.

0123movie.net