【问题标题】:How to export properties of shared case classes如何导出共享案例类的属性
【发布时间】:2015-02-09 23:35:51
【问题描述】:

我正在尝试在服务器和客户端之间共享一个案例类。我在两端都用泡菜。对象及其数据在两端都可以很好地使用。

共享课

case class Foo(var id : Long,var title: Description)

但是我需要在客户端导出案例类的字段。我可以添加 @ExportAll 注释,但这意味着在服务器项目中拉入 scalajs 库。

是否有更好的方法将成员 ID 和标题暴露给 javascript。

发送,

【问题讨论】:

    标签: scala.js


    【解决方案1】:

    将内容导出到 JavaScript 的正确方法是使用 @JSExportAll 注释。但是,您不能也不应该在服务器项目上拉取 Scala.js 库。对于这个用例,我们有一个专用的 JVM 工件 scalajs-stubs,您可以像这样将其添加到您的 JVM 项目中:

    libraryDependencies += "org.scala-js" %% "scalajs-stubs" % scalaJSVersion % "provided"
    

    作为“提供”的依赖项,它不会在运行时出现。但它允许您编译 JVM 项目,即使它引用了JSExportAll

    另见the ScalaDoc of scalajs-stubs

    【讨论】:

      猜你喜欢
      • 2017-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多