【问题标题】:Can not access to firebase.database.ServerValue.TIMESTAMP in React-Native无法在 React-Native 中访问 firebase.database.ServerValue.TIMESTAMP
【发布时间】:2016-07-26 14:34:21
【问题描述】:

升级到 Firebase 3.2.0(react-native 0.30)后,我正在尝试按照文档中的说明设置 TIMESTAMP

  import Firebase from 'firebase'
    ...
  let config = {
    apiKey:  `${ Config.firebase.apiKey }`,
    authDomain: `${ Config.firebase.authDomain }`,
    databaseURL: `${ Config.firebase.databaseURL }`,
    storageBucket: `${ Config.firebase.storageBucket }`
  }

  const firebase = Firebase.initializeApp(config)
  const created_at = firebase.database.ServerValue.TIMESTAMP

然后我得到

created_at = 未定义

使用 Chrome 的开发者工具进行调试时,firebase.database 是一个没有任何ServerValue 的函数。

有什么想法吗?

【问题讨论】:

  • 我这样称呼它firebase.database().ServerValue.TIMESTAMP 所以像我这样的人删除括号

标签: firebase react-native firebase-realtime-database


【解决方案1】:

试试这个语法:

 import Firebase from 'firebase'

然后:

 Firebase.database.ServerValue.TIMESTAMP

【讨论】:

  • import Firebase from 'firebase' 也可以。 OP 只需要使用 Firebase.database.ServerValue.TIMESTAMP 而不是 firebase.database.ServerValue.TIMESTAMP,因为后者不是默认的库导入。
【解决方案2】:

这对我有用

import RNFirebase from "react-native-firebase"
data.timestamp = RNFirebase.database.ServerValue.TIMESTAMP;

【讨论】:

    【解决方案3】:

    就我而言,即使我使用 Firestore 使用 Web JS 客户端进行所有数据存储/检索,我也必须像这样在 HTML 的开头导入 Firebase 数据库库

    <script defer src="/__/firebase/7.17.1/firebase-database.js"></script>

    仅仅拥有<script defer src="/__/firebase/7.17.1/firebase-firestore.js"></script> 是不够的。加载database 模块后,我可以访问firebase.database 的东西,比如ServerValue.TIMESTAMP

    就我而言,由于我使用的是 Firestore,因此我使用了 firebase.firestore.Timestamp.now() 而不是上面的 firebase.database 位。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-25
      • 2019-02-07
      • 1970-01-01
      • 2016-07-27
      • 1970-01-01
      • 1970-01-01
      • 2020-01-13
      • 1970-01-01
      相关资源
      最近更新 更多