clojure 服务器从 mysql 数据库中读取日期时间列。通过使用 jdbc,此操作通常会返回 java.sql.Timestamp
我正在通过 transit
格式将这些数据传送到前端。可以将日期强制转换为时间戳并在前端解析它以进行进一步处理,例如图书馆 cljs-time。这是要走的路还是有其他更方便的方法?
最佳答案
您可以在 transit-cljs 中查看默认类型映射 here .默认情况下,Transit time
值映射到 JavaScript Date
。我更喜欢将日期映射到 goog.Date.UtcDateTime
。有 docs关于扩展 Transit Read 和 Write 处理程序,但这是我们使用的:
(def transit-readers
{:handlers
{"m" (transit/read-handler (fn [s] (UtcDateTime.fromTimestamp s)))
"u" uuid}})
(def transit-writers
{:handlers
{UtcDateTime (transit/write-handler
(constantly "m")
(fn [v] (.getTime v))
(fn [v] (str (.getTime v))))}})
关于mysql - 通过传输格式将日期从 clojure 服务器传递到 cljs 前端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39741638/