Firebase: TypeError: fbRef.child не является функцией - PullRequest
1 голос
/ 08 октября 2019

Я пытаюсь использовать firebase в первый раз с веб-приложением, но я получаю эту ошибку о .child не является функцией. Может ли кто-нибудь показать правильный способ подключения к коллекции баз данных firebase, если то, что я делаю, неправильно.

Если я предпочитаю использовать mongoDb вместо firebase, как мне реализовать метод post в этом случае?

Это ошибка, которую я получаю при публикации формы на сайте.

Ошибка типа: fbRef.child не является функцией

at C:\Users\WorkoutApp_v1\routes\workouts.js:32:23
at Layer.handle [as handle_request] (C:\Users\WorkoutApp_v1\node_modules\express\lib\router\layer.js:95:5)
at next (C:\Users\WorkoutApp_v1\node_modules\express\lib\router\route.js:137:13)
at Route.dispatch (C:\Users\WorkoutApp_v1\node_modules\express\lib\router\route.js:112:3)
at Layer.handle [as handle_request] (C:\Users\WorkoutApp_v1\node_modules\express\lib\router\layer.js:95:5)
at C:\Users\WorkoutApp_v1\node_modules\express\lib\router\index.js:281:22
at Function.process_params (C:\Users\WorkoutApp_v1\node_modules\express\lib\router\index.js:335:12)
at next (C:\Users\WorkoutApp_v1\node_modules\express\lib\router\index.js:275:10)
at Function.handle (C:\Users\WorkoutApp_v1\node_modules\express\lib\router\index.js:174:3)
at router (C:\Users\WorkoutApp_v1\node_modules\express\lib\router\index.js:47:12)

Это метод записи в моем файле роутера.

var express = require('express');
var router = express.Router();
const Firebase = require('firebase');
const fbRef = 'https://console.firebase.google.com/project/workout-7f912/database/firestore  /data~2Fexercise~2F2zCvky1fWQcD14tTCq8B';

router.post('/add', function(req,res,next) {
var workout = {
    name: req.body.Name,
    discription: req.body.Discription,
    set: req.body.Set,
    RepsTime: req.body.RepsTime
}
// console.log(workout);
// return;

var dbRef = fbRef.child('workouts');
dbRef.push().set(workout);

req.flash('success_msg', 'Workout saved');
res.redirect('/workouts');
});

1 Ответ

1 голос
/ 08 октября 2019

fbRef является строкой и не содержит метод с именем child. Сначала вам нужно подключиться к базе данных firebase, затем вы можете сделать следующее:

const fbRef = firebase.database().ref();
var dbRef = fbRef.child('workouts');

Для получения дополнительной информации проверьте следующее:

https://firebase.google.com/docs/database/web/start

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...