TypeError: db.collection (...). Document не является функцией в хранилище огня - PullRequest
1 голос
/ 28 мая 2020

Я не уверен, что мне здесь не хватает скрипта, я убедился, что указываю на базу данных firestore (), а не на базу данных реального времени, но я получаю сообщение об ошибке, я могу добавить в firestore () db уже на другом маршруте, поэтому я не уверен, почему я также не могу получить документы ??

TypeError: db.collection(...).document is not a function

вот мой маршрутизатор, где я получаю доступ к БД из

var express = require('express');
var router = express.Router();
const path = require('path');


const firebaseConfig = {
  apiKey: '********',
  authDomain: '****',
  databaseURL: '******',
  projectId: "**********",
  storageBucket: '********',
  messagingSenderId: '********',
  appId: "*******************",
  measurementId: "***********"
};

const firebase = require('firebase')
require('firebase/auth')
require('firebase/database')


firebase.initializeApp(firebaseConfig)
const db = firebase.firestore()
db.settings({timestampsInSnapshots:true})



/* GET whichever article is selected */

router.get('/articles/:title', function(req, res, next) {
  const title = req.params.title
  console.log(title)

  db.collection('articles').document(title.toString()).get().then((string) => {
    console.log(string)
    res.sendFile(path.join(__dirname + "/../public/articletemplate.html"));
    res.json({data: string})
  });
});


module.exports = router;


1 Ответ

1 голос
/ 28 мая 2020

В JavaScript метод создания DocumentReference из CollectionReference - doc(), а не document(). Вы, наверное, путаете его с Java API.

db.collection('articles').doc(title.toString())
...