通过传输格式将日期从clojure服务器传递到cljs前端

时间:2016-09-28 08:12:02

标签: mysql jdbc clojure clojurescript transit

clojure服务器从mysql数据库中读取日期时间列。通过使用jdbc,此操作通常会返回transit

的实例

我将这些数据通过html { width:100%; height:100%; } body { width:100%; height:100%; } .header { 15% !important; } 格式提供给前端。可以将日期强制转换为时间戳并在前端解析它以进行进一步处理。图书馆cljs-time。这是要走的路还是还有另一种更方便的方法?

1 个答案:

答案 0 :(得分:1)

您可以在transit-cljs here中看到默认类型映射。默认情况下,Transit time值将映射到JavaScript Date。我更喜欢将日期映射到goog.Date.UtcDateTime。有docs扩展Transit读写处理程序,但这里是我们使用的:

(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))))}})