# #javascript #firebase #google-cloud-firestore
Вопрос:
не могу добавить новый документ в firestore, я новичок в vue и firestore. Это мой конфигурационный файл. [ import { initializeApp } from "firebase/app"
import { getAuth, connectAuthEmulator } from "firebase/auth"
import { getFirestore, connectFirestoreEmulator } from "firebase/firestore"
const firebaseConfig = {
apiKey:
projectId: "covidcare-ytu-clinic",
}
// Initialize Firebase
const firebaseApp = initializeApp(firebaseConfig)
const db = getFirestore()
connectFirestoreEmulator(db, "localhost", 8081)
const auth = getAuth(firebaseApp)
connectAuthEmulator(auth, "http://localhost:9099")
export default { db, auth }
Это мое Dataservice.js
import { db } from "@/firebase"
import { addDoc, collection } from "firebase/firestore"
class dataService {
/* async getAll() {
const querySnapshot = await getDocs(collection(db, "clients"))
querySnapshot.forEach((doc) => {
console.log(doc.id, "=> ", doc.data())
})
}*/
async create(data) {
try {
const docRef = await addDoc(collection(db, "cli"), data)
console.log("Document written with ID: ", docRef.id)
} catch (e) {
console.error("Error adding document: ", e)
}
}
/*
update(id, data) {
return db.collection("clients").doc(id).updateDoc(data)
}
delete(id) {
return db.collection("clients").doc(id).delete()
}*/version-8 firebase
}
export default new dataService()
Вот моя ошибка в базе данных ..Я не смог добавить ни одного документа в свой firestore.Это отнимает у меня так много времени .
DataServices.js:15 Error adding document: FirebaseError: Expected first argument to collection() to be a CollectionReference, a DocumentReference or FirebaseFirestore
Комментарии:
1. Можете ли вы
console.log(db)
прямо передaddDoc()
заявлением поделиться скриншотом вывода ? Я бы попробовал импортировать, используя относительный путь, а@/firebase
не один раз.2. да, сэр@Dharmaraj, я уже console.log(db) до addDoc() .
3. Можете ли вы поделиться скриншотом того, что он регистрирует ?
4. в консоли. >>> появляются неопределенные значения.
5. Тогда это неправильный путь.. можете ли вы поделиться скриншотом своей структуры каталогов ?
Ответ №1:
Я нашел ответ .Когда кто-то сталкивается с подобными проблемами , как я, я надеюсь, что это полезно . я удаляю значение по умолчанию в файле конфигурации ,где я должен написать экспорт { db, auth} .
Ответ №2:
В Dataservice.js
, попробуйте использовать относительный путь для импорта БД:
// Remove this
// import { db } from "@/firebase"
// Try this
import { db } from "../../firebase" // relative path to config file
Комментарии:
1. все еще получаю ту же ошибку, сэр
2. @Bubblegum можете ли вы поделиться своей структурой каталогов ?
3. Да @Dharmaraj Я отредактировал свой вопрос, сэр
4. @Bubblegum в dataservice, вы изменили путь импорта на
import { db } from "../firebase"
? или../../firebase
как в моем ответе5. импорт { db } из «../firebase» в Dataservice.js сэр