如何将 Firebase 与 Nativescript-Vue 一起使用?

How to Use Firebase with Nativescript-Vue?

自 11 月以来,我一直在尝试实现一个简单的 Firebase 提取。在这一点上,我希望我刚刚创建了一个新的 Rails api;它会更快。 但是每个人都坚持认为 Firebase 太简单了。

在app.js,

import firebase from 'nativescript-plugin-firebase';

那部分似乎还可以。 在那之后,说明到处都是。 插件的自述文件建议初始化:

firebase.init({
  // Optionally pass in properties for database, authentication and cloud messaging,
  // see their respective docs.
}).then(
    function () {
      console.log("firebase.init done");
    },
    function (error) {
      console.log("firebase.init error: " + error);
    }
);

其他一些人坚持认为初始化代码是不必要的。它 运行 没有错误,但他之后给出的代码什么也没产生。另外,

const db = firebase.firestore;
const UserStatusCollection = db.collection("UserStatus"); 
UserStatusCollection.get();

生成一个空对象 {}。

这是我的 Firebase 集合:

如果我将 firebase 调用包装在 async/await 中(没有人将其显示为如此复杂),

async function getFireStoreData() {
  try {
    let result = await this.UserStatusCollection.get();
    console.log(result);
    return result;
  } 
  catch (error) {
    console.error(
      "UserStatusCollection.get()" + error
    );
  }
}

并称之为

let temp2 = getFireStoreData();
console.log("temp2:" + temp2);

我得到的只是一个对象承诺。

正如我所说,我希望我刚刚建立了一个新的 Rails API,并且自 11 月以来过着简单得多的生活。

您的 getFireStoreData 方法是异步的,您没有 await 使用它。这可能就是你得到承诺的原因。尝试await getFireStoreData()。看看是否有效。

既然也是promise,可以尝试使用.then.

getFireStoreData().then(data => {
  console.log(data);
})