ScalaJS:跨平台日期的最新技术是什么?

ScalaJS: What's the state of the art for cross-platform dates?

我在 Play 中使用 ScalaJS。我想在 JS 和 JVM 平台上使用的许多模型都涉及日期和时间。鉴于缺乏跨平台 date/time 库,人们如何处理这个问题?

我知道的事情:

  1. scalajs-java-time 项目 (https://github.com/scala-js/scala-js-java-time) 将 JDK8 的 java.time api 移植到 Scala.js。不幸的是,它远未完成,根据提交日志判断,似乎已经停滞不前。
  2. https://github.com/mdedetrich/soda-time 是 JodaTime 到 Scala/Scala.js 的端口。但它还没有准备好用于生产。
  3. https://groups.google.com/forum/#!topic/scala-js/6JoJ7x-VxLA 的旧 post 建议将毫秒存储在共享代码中,然后在每个平台上对 js.Date 或 JodaTime 进行隐式转换。但我们确实需要一个通用接口,而这并没有提供。
  4. Li Haoyi 的优秀 "Hands-on Scala.js" 有一个简单的跨平台库 (http://www.lihaoyi.com/hands-on-scala-js/#ASimpleCross-BuiltLibrary),理论上可以扩展它以在 /shared 中提出一个 API 委托到 jvm 上的 JodaTime 和 js 上的 Momento——但这听起来工作量很大。
  5. (稍后添加)https://github.com/soc/scala-java-time 基于贡献给 OpenJDK 的 java-time 的实现。自述文件声称大多数东西都在工作。现在,这看起来是最有希望满足我需求的方法。

前辈们有什么建议吗?现在,第四个选项似乎是我最好的选择(API 仅限于我实际使用的东西)。我希望有更好的东西。

我和你在同一条船上,我想出的最好的解决方案是 cquiroz's scala-java-time library。通过阅读对您上述问题的评论,您似乎最终到达了同一个地方!

我是通过 google 搜索来到这里的,鉴于此解决方案比您上面提到的替代方案好得多,让我们考虑将此问题标记为已解决以供未来访问者使用。