【问题标题】:How to get/generate current Timestamp in firebase firestore in React如何在 React 的 firebase firestore 中获取/生成当前时间戳
【发布时间】:2020-08-04 11:33:56
【问题描述】:

我在当前项目中使用 Firebase Firestore 数据库,并且必须从我的前端 react 添加文档,为此我需要当前时间戳。

import * as firebase from "firebase";
import React, {useState} from 'react';

const [time, setTime] = useState({''}) //here i need current timestamp from firebase.

【问题讨论】:

    标签: reactjs firebase google-cloud-firestore


    【解决方案1】:

    你需要从 firebase 导入 firestore, 不要使用 firebase.firestore.FieldValue.serverTimeStamp 它不会工作

    这是工作示例

    import {firestore} from "firebase";
    
    const timestamp = firestore.FieldValue.serverTimestamp();
    

    【讨论】:

      【解决方案2】:
      firebase.initializeApp(firebaseConfig);
      const projectFirestore = firebase.firestore();
      const timestamp = firebase.firestore.FieldValue.serverTimestamp;
      

      【讨论】:

      【解决方案3】:

      firebase.initializeApp(firebaseConfig); const timestamp = firebase.firestore.FieldValue.serverTimestamp;

      还请注意,尽管@shubham Takode 的回答是正确的,但firebase firestore 当前时间戳不会在客户端填充,因此尝试在react useState() 管理中使用它对您没有好处。

      import * as firebase from "firebase";
      import React, {useState} from 'react';
      
      firebase.firestore
          .collection('user')
          .doc('userid1')
          .set({
                 username: "first user",
                 email: "user@email.com",
                 time: firebase.firestore.FieldValue.serverTimestamp() // This sets a placeholder in your record that get authomatically populated with the serverTime once it gets to your firestore db.
          }).then(/*do somethings on success*/).catch(err => {/*do somethings on err*/})
      

      【讨论】:

      • 无法读取未定义的属性'serverTimestamp'
      • 可以分享更多细节,您可以分享屏幕截图或您的实现中出现错误的代码。我猜你正在使用打字稿对吗?分享你的实现代码
      猜你喜欢
      • 2021-02-07
      • 2018-10-18
      • 2019-03-11
      • 2020-11-20
      • 1970-01-01
      • 1970-01-01
      • 2010-09-11
      • 2011-02-16
      • 2017-02-15
      相关资源
      最近更新 更多