路由后访问子集合Firestore

时间:2018-09-18 21:25:54

标签: angular firebase google-cloud-firestore angularfire2

我在Firestore中具有以下结构:

enter image description here


enter image description here

我正在使用路由器访问每个文档,在那儿。问题是我不知道如何在每个文档中访问此子集合archivos

这是我的代码:

firebase.service.ts

import { Injectable } from '@angular/core';
import { AngularFirestore, AngularFirestoreDocument } from 'angularfire2/firestore';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';
import { Proyecto } from '../class/proyecto';

@Injectable({
  providedIn: 'root'
})
export class FirebaseService {

  proyectoObject: AngularFirestoreDocument<Proyecto>;
  id: any;

  constructor( private afs: AngularFirestore ) { }

  getProyectoObject(id: string) {
    this.proyectoObject = this.afs.doc('proyectos/' + id);
    return this.proyectoObject;
  }

}

detail.component.ts

import { Component, OnInit } from '@angular/core';
import { FirebaseService } from '../../services/firebase.service';
import { ActivatedRoute } from '@angular/router';

@Component({
  selector: 'app-portafolio-detalle',
  templateUrl: './portafolio-detalle.component.html',
  styleUrls: ['./portafolio-detalle.component.scss']
})

export class PortafolioDetalleComponent implements OnInit {

id;
categoria: string;
cliente;
titulo;
textoDestacado;
descripcion;
imagenes;

constructor( private fs: FirebaseService, private activatedRoute: ActivatedRoute ) { }

ngOnInit() {
  this.id = this.activatedRoute.snapshot.params['id'];
  this.fs.getProyectoObject(this.id).valueChanges().forEach(proyecto => {
    this.categoria = proyecto.categoria,
    this.cliente = proyecto.cliente,
    this.titulo = proyecto.titulo,
    this.textoDestacado = proyecto.textoDestacado,
    this.descripcion = proyecto.descripcion
    this.imagenes = proyecto.imagenes;
  });
}
}

detail.component.html

<h1>{{ titulo }}</h1>
<h5>{{ textoDestacado }}</h5>
<p>{{ descripcion }}</p>

0 个答案:

没有答案