我正在尝试使用upickle和ScalaJs序列化/反序列化以下案例类:
case class Cell(var x: String)
case class Container(var cells: js.Array[Cell] = js.Array())
upickle 0.2.5声称它不知道如何处理js.Arrays,所以我最终这样做了:
object Helper {
implicit val jsArrayWriter = upickle.Writer[js.Array[Cell]] {
case array ⇒ writeJs(array: mutable.Seq[Cell])
}
implicit val jsArrayReader: Reader[js.Array[Cell]] = upickle.Reader[js.Array[Cell]] {
case jsValue ⇒ readJs[mutable.Seq[Cell]](jsValue).toJSArray
}
}
这是处理js.Arrays的最佳方法吗?
答案 0 :(得分:0)
upickle.json.{read/write}
使其更加优化。如果您有时间发送Reader/Writer[js.Value]
的PR,我们可以将其放入主干。