Estoy tratando de hacer una carga de datos muy simple desde firebase pero no funcionará cuando uso segmentos de ruta en reaccionar
algo muy simple como
import { getFirestore, getDoc, getDocs, setDoc, doc, updateDoc, getCollection, collection } from "firebase/firestore"; import { firebaseConfig } from "config"; // Initialize Firebase const app = initializeApp(firebaseConfig); const firestore = getFirestore(app); getDoc(doc(firestore, 'collection', ['path','to','document']));lanzará una excepción
Uncaught (in promise) TypeError: n.split is not a function¿Cómo puedo hacer para pasar una matriz para esa función?
El doc() no toma una matriz como parámetro sino segmentos de ruta (cadenas). Intente usar la sintaxis de propagación en la matriz como se muestra a continuación:
getDoc(doc(firestore, 'collection', ...['path','to','document'])); // spread syntax here ⬆ // Equivalent to: getDoc(doc(firestore, 'collection', 'path', 'to', 'document')); Firma de la función doc() de la documentación:
export declare function doc(firestore: Firestore, path: string, ...pathSegments: string[]): DocumentReference<DocumentData>;