Profesor Nico, he seguido sus cursos de Angular y me han parecido muy bien estructurados y fácil de seguir, pero ahora quisiera hacer com...

Yuri Alberto Trillos Vega

Yuri Alberto Trillos Vega

Pregunta
studenthace 5 años

Profesor Nico, he seguido sus cursos de Angular y me han parecido muy bien estructurados y fácil de seguir, pero ahora quisiera hacer completamente el desarrollo en las tecnologías de angular y firebase firestore, he tenido dificultades por la forma de acceder a las collection y doc, la sintaxis presentada en la página oficial difiere de los ejemplos presentados, buscando por el internet encuentro algunos que funcionan pero no dejan acceder a uno Doc en particular. Donde puedo ver el proceso que se hizo con el CRUD para realiazarlo en Firestore

Ejemplo 1, Me retorna la Collection, pero no me deja al Documento

public getPreguntasAll(tipo: string): Observable<firebase.firestore.QuerySnapshot>{ return this.firestore.collection<Pregunta>(this.collectionName).get(); }

Ejemplo 2, Este me devuelve el Doc, pero tengo problema asignarlo al Modelo, para empezar a trabajar con el resultado:

public getPreguntasAll(tipo: string): { return this.firestore.collection<Pregunta>('preguntas').doc(tipo).ref.get() .then( doc => { if (doc.exists) { console.log('Documentos : ', doc.data()); } else { // doc.data() will be undefined in this case console.log('Documento no encontrado!'); } }) .catch( error => { console.log('Error getting document:', error); }); }

De antemano muchas gracias por la atención prestada.

1 respuestas
para escribir tu comentario
    Nicolas Molina

    Nicolas Molina

    teacherhace 5 años

    Hola muchas gracias por seguir los cursos, ahora para obtener la info solo de un doc debería ser así:

    public getPreguntas(tipo: string){ return this.firestore.doc<Pregunta>(`preguntas/${tipo}`); }

    Luego ya en tu componente puedes

    valueChanges.subscribe
    , ahora si dentro de eso doc tiene otra
    collection
    debe ser algo como:

    const userDoc = afs.doc<Item>('user/david'); return userDoc.collection<Task>('tasks').valueChanges();
Curso de Angular [Empieza Gratis]

Curso de Angular [Empieza Gratis]

Entiende los conceptos fundamentales de Angular 8. Conoce la arquitectura de este Framework para que programes aplicaciones web con sus mejores prácticas. Conecta tus aplicaciones con una API para obtener datos de un sistema de Backend. Crea una tienda en línea y publícala en Internet con Firebase.

Curso de Angular [Empieza Gratis]
Curso de Angular [Empieza Gratis]

Curso de Angular [Empieza Gratis]

Entiende los conceptos fundamentales de Angular 8. Conoce la arquitectura de este Framework para que programes aplicaciones web con sus mejores prácticas. Conecta tus aplicaciones con una API para obtener datos de un sistema de Backend. Crea una tienda en línea y publícala en Internet con Firebase.