node.js - FireStore - TypeError : k. setTimeout 不是函数

标签 node.js firebase react-native google-cloud-firestore

我在 React Native 应用中使用 Firebase,并使用 Facebook token 进行身份验证。它与实时数据库配合得很好。 但不是Firestore。当我调用 collection.get、set 或 add 时,我收到了此错误,该错误没有被我的处理程序捕获,而是转储到控制台中。

(node:15795) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: k.setTimeout is not a function

我也尝试作为独立脚本作为 node t_firebase.js 运行。

我安装了软件包

npm install firebase
npm install firestore

我使用的是 Node v6.11.4 和 npm 3.10.10、firestore 1.1.6、firebase 4.5.1

这是脚本:

var firebase = require("firebase");
require("firebase/firestore");

var config = {
  apiKey: "...",
  authDomain: "....firebaseapp.com",
  databaseURL: "https://....firebaseio.com",
  projectId: "...",
  storageBucket: "...",
  messagingSenderId: "..."
};
firebase.initializeApp(config);

testFirebase();

function testFirebase(){
  console.log("testFirebase");
  token="...";
  var credential = firebase.auth.FacebookAuthProvider.credential(token);

  firebase.auth().signInWithCredential(credential)
  .then(function(val){testFirestore();})
  .catch((error)=>{console.log("error:"+error);});
}


function testFirestore(){
  console.log("testFirestore");
  var db = firebase.firestore();
  var collection = db.collection("livros");

  var docref = collection.add({
    autor: "AdaLovelace",
    name: "blabla"
  }).then(function(val){ console.log("OK"); }).catch((error)=>{console.log("error:"+error);});
}

最佳答案

虽然你提到了React Native,但你的错误实际上来自node.js,所以我不确定你问的是哪个环境。

关于node.js - FireStore - TypeError : k. setTimeout 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46726615/

相关文章:

ios - 为什么在 tableViewCell 中点击一个按钮时只返回一个 uid?

android - 从 React Native 中的目录加载一组图像

javascript - 使用 React.createElement 时出错

swift - 我如何在注册用户时提供安全性? (例如 : each username must be different, 电子邮件必须有效等)

reactjs - 从图像池中选择背景图像

node.js - Passport.authenticate 无声无息地死去

node.js - 使用带有护照 js 的 Node js 不会在 Handlebars 模板上显示 Flash 消息

javascript - 在 pug 中将 JSON 作为 javascript 变量传递

angularjs - 使用 Satellizer.js 注销

firebase - (Flutter Web) Firebase 存储不适用于 firebase 插件