2017-12-31 33 views
0

をFirestoreするミリ秒単位でサーバーのタイムスタンプを記述する方法私は日付文字列としてFirestoreにサーバーのタイムスタンプを書く方法を知っている:どのよう

doc_ref.set({ts: firebase.firestore.FieldValue.serverTimestamp()});

が、どのように私の代わりに番号としてのUnixタイムスタンプを保存することができます?これも可能ですか?私はAlgoliaのFirestoreドキュメントのサブセットをミラー化できる必要があります。私はAlgoliaインデックスをタイムスタンプ文字列で並べ替えることはできません。

答えて

3

ドキュメントに文字列として格納されていません。つまり、serverTimestampがコンソールにレンダリングする方法です。 tsフィールドをより詳細に調べると、 "timestamp"というタイプがあることがわかります。コンソールで値をクリックして編集する場合は、日付タイプとして明示的に表示されているタイプの値が表示されます。それを(JavaScriptで)読み返すと、Dateオブジェクトが戻ってくるので、それからユノーのエポックベースの時間を得ることができます。

+0

明らかに、タイムスタンプを数字として保存することはできません。 – Vincent

+0

タイムスタンプ*は*です。コンソールはあなたに文字列形式を表示しており、APIはDateを提供しています。これはDateの周りのラッパーです。 –

+0

さて、フィールド値をRTDB内の.svタイムスタンプオブジェクトのように設定するオプションがあるはずなので、日付オブジェクトの折り返し/アンラッピングが不要なストレートな番号が格納されるようにしてください。 – Vincent