Невозможно отобразить данные, полученные из базы данных в Angular - PullRequest
0 голосов
/ 14 февраля 2019

Я пытаюсь прочитать «публикации» из моей базы данных Firebase, а затем отобразить их в Angular!

Итак, я сделал модель "публикации" в угловом формате и пытаюсь получить базу данных "публикации", используя мой сервис.

Это моя структура базы данных:

enter image description here

служба, которую я использовал: публикации.service.ts

   publications: Publication[] = [];
    PublicationsSubject = new Subject<Publication[]>();
    emitPublications() {
      this.PublicationsSubject.next(this.publications);
      console.log("in emit ", this.publications)
    }

  getPublications() {
    firebase.database().ref('/publications')
      .on('value', (data: firebase.database.DataSnapshot) => {
          this.publications = data.val() ? data.val() : [];
          this.emitPublications();
        }
      );
  }

модель «публикация»:publishing.model.ts

export class Publication {
    date_parution:  string ;
    numero:  string ;
    sommaire:  string ;
    tags:  string ;
    titre:  string ;
    titre_short:  string ;
    URL_achat:  string ;
    URL_couv:  string ;

    constructor(date_parution : string ,numero :string , sommaine : string , tags : string , titre : string , titre_short : string , 
      URL_achat:  string ,   URL_couv:  string ){
    }

  }

компонент, где я хочу отобразить данные publishing-list.componenet.ts

Publications: Publication[];
 PublicationsSubscription: Subscription;

  constructor(private PublicationsService: PublicationsService , private router: Router) {}

  ngOnInit() {
    this.PublicationsSubscription = this.PublicationsService.PublicationsSubject.subscribe(
      (publications: Publication[]) => {
        this.Publications = publications;
      }
    );
    this.PublicationsService.emitPublications();
  }

Проблемаявляется то, что я не мог преобразовать объект Publication (тот, который я получил из firebase) в массив публикации, как модель, которую я сделал с машинописным шрифтом, и потому, что формат объекта { String , Publication }, и в этом случае строка являетсяID в базе данных Firebase

Любая помощь, пожалуйста?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...