我正在使用uPickle/ScalaJS使用以下代码片段将js.Dynamic对象反序列化为case类:
read[myClass](JSON.stringify(dynObj))
其中,myClass是案例类,dynObj是js.Dynamic对象。
有没有样板的,更简单的方法吗?
为了序列化一个case类,我可以使用Shapeless以这个例子为起点,序列化为js.Dynamic:
Converting nested case classes to nested Maps using Shapeless
我希望能够使用uPickle代替它。如何使用uPickle完成往返?
最佳答案
upickle.default.readJs[myClass](upickle.json.readJs(dynObj))
应该做。如果您发现自己做得很多,则可以将其包装在一个很好的帮助器中。
存在类似的调用来将内容写入
js.Dynamic
,反之亦然 upickle.json.writeJs(upickle.default.writeJs[myClass](myClassInstance))
尽管您可以在此处省略类型参数,因为会被推断出来
关于scala - 如何使用uPickle将case类序列化/反序列化为js.Dynamic,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33180377/